You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2014/06/10 17:46:41 UTC
svn commit: r1601669 [6/7] - in /openmeetings:
branches/3.0.x/WebContent/src/modules/invitation/ branches/3.0.x/docs/
branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/
branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/basic/ b...
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UserForm.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UserForm.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UserForm.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UserForm.java Tue Jun 10 15:46:38 2014
@@ -25,11 +25,14 @@ import static org.apache.openmeetings.we
import static org.apache.wicket.datetime.markup.html.basic.DateLabel.forDatePattern;
import static org.apache.wicket.validation.validator.StringValidator.minimumLength;
+import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collection;
import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.user.User;
+import org.apache.openmeetings.db.entity.user.User.Right;
import org.apache.openmeetings.db.entity.user.User.Type;
import org.apache.openmeetings.web.admin.AdminBaseForm;
import org.apache.openmeetings.web.app.WebSession;
@@ -42,7 +45,6 @@ import org.apache.wicket.markup.html.bas
import org.apache.wicket.markup.html.form.CheckBox;
import org.apache.wicket.markup.html.form.DropDownChoice;
import org.apache.wicket.markup.html.form.Form;
-import org.apache.wicket.markup.html.form.IChoiceRenderer;
import org.apache.wicket.markup.html.form.RequiredTextField;
import org.apache.wicket.markup.html.panel.IMarkupSourcingStrategy;
import org.apache.wicket.markup.html.panel.PanelMarkupSourcingStrategy;
@@ -51,6 +53,9 @@ import org.apache.wicket.model.Model;
import org.apache.wicket.util.time.Duration;
import com.googlecode.wicket.jquery.ui.widget.dialog.MessageDialog;
+import com.vaynberg.wicket.select2.Response;
+import com.vaynberg.wicket.select2.Select2MultiChoice;
+import com.vaynberg.wicket.select2.TextChoiceProvider;
/**
* CRUD operations in form for {@link User}
@@ -145,54 +150,36 @@ public class UserForm extends AdminBaseF
add(new CheckBox("forceTimeZoneCheck"));
- final String field159 = WebSession.getString(159);
- final String field160 = WebSession.getString(160);
-
- add(new DropDownChoice<Integer>("status", Arrays.asList(0, 1), new IChoiceRenderer<Integer>() {
-
+ add(new Select2MultiChoice<Right>("rights", null, new TextChoiceProvider<Right>() {
private static final long serialVersionUID = 1L;
- public Object getDisplayValue(Integer id) {
- if (id.equals(0)) {
- return field159;
- } else if (id.equals(1)) {
- return field160;
- }
- return null;
+ @Override
+ protected String getDisplayText(Right choice) {
+ return choice.name();
}
- public String getIdValue(Integer id, int index) {
- return "" + id;
+ @Override
+ protected Object getId(Right choice) {
+ return choice.name();
}
- }));
-
- final String field166 = WebSession.getString(166);
- final String field167 = WebSession.getString(167);
- final String field168 = WebSession.getString(168);
- final String field1311 = WebSession.getString(1311);
-
- add(new DropDownChoice<Long>("level_id", Arrays.asList(1L, 2L, 3L, 4L), new IChoiceRenderer<Long>() {
-
- private static final long serialVersionUID = 1L;
-
- public Object getDisplayValue(Long id) {
- if (id.equals(1L)) {
- return field166;
- } else if (id.equals(2L)) {
- return field167;
- } else if (id.equals(3L)) {
- return field168;
- } else if (id.equals(4L)) {
- return field1311;
+ @Override
+ public void query(String term, int page, Response<Right> response) {
+ for (Right r : Right.values()) {
+ if (r.name().contains(term)) {
+ response.add(r);
+ }
}
- return null;
}
- public String getIdValue(Long id, int index) {
- return "" + id;
+ @Override
+ public Collection<Right> toChoices(Collection<String> ids) {
+ Collection<Right> rights = new ArrayList<User.Right>(ids.size());
+ for (String id : ids) {
+ rights.add(Right.valueOf(id));
+ }
+ return rights;
}
-
}));
add(new ComunityUserForm("comunity", getModel()));
}
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/OmAuthenticationStrategy.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/OmAuthenticationStrategy.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/OmAuthenticationStrategy.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/OmAuthenticationStrategy.java Tue Jun 10 15:46:38 2014
@@ -20,6 +20,7 @@ package org.apache.openmeetings.web.app;
import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
+import org.apache.openmeetings.db.entity.user.User.Type;
import org.apache.wicket.authentication.strategy.DefaultAuthenticationStrategy;
import org.apache.wicket.util.string.Strings;
import org.red5.logging.Red5LoggerFactory;
@@ -30,68 +31,63 @@ public class OmAuthenticationStrategy ex
private static final String VALUE_SEPARATOR = "-sep-";
private static final String COOKIE_KEY = "LoggedIn";
private static final Logger log = Red5LoggerFactory.getLogger(OmAuthenticationStrategy.class, webAppRootKey);
- /** The cookie name to store the username/password/domain */
+ /** The cookie name to store the username/password/type/domain */
private final String cookieKey;
-
+
public OmAuthenticationStrategy() {
super(COOKIE_KEY);
cookieKey = COOKIE_KEY;
}
-
+
/**
* @see org.apache.wicket.authentication.IAuthenticationStrategy#load()
*/
@Override
- public String[] load()
- {
+ public String[] load() {
String value = getCookieUtils().load(cookieKey);
- if (Strings.isEmpty(value) == false)
- {
- try
- {
+ if (Strings.isEmpty(value) == false) {
+ try {
value = getCrypt().decryptUrlSafe(value);
- }
- catch (RuntimeException e)
- {
- log.info(
- "Error decrypting login cookie: {}. The cookie will be deleted. Possible cause is that a session-relative encryption key was used to encrypt this cookie while this decryption attempt is happening in a different session, eg user coming back to the application after session expiration",
- cookieKey);
+ } catch (RuntimeException e) {
+ log.info("Error decrypting login cookie: {}. The cookie will be deleted. Possible cause is that a "
+ + "session-relative encryption key was used to encrypt this cookie while this decryption attempt "
+ + "is happening in a different session, eg user coming back to the application after session expiration",
+ cookieKey);
getCookieUtils().remove(cookieKey);
value = null;
}
- if (Strings.isEmpty(value) == false)
- {
+ if (!Strings.isEmpty(value)) {
String username = null;
String password = null;
- String domain = null;
+ String type = null;
+ String domainId = null;
String[] values = value.split(VALUE_SEPARATOR);
- if ((values.length > 0) && (Strings.isEmpty(values[0]) == false))
- {
+ if (values.length > 0 && !Strings.isEmpty(values[0])) {
username = values[0];
}
- if ((values.length > 1) && (Strings.isEmpty(values[1]) == false))
- {
+ if (values.length > 1 && !Strings.isEmpty(values[1])) {
password = values[1];
}
- if ((values.length > 2) && (Strings.isEmpty(values[2]) == false))
- {
- domain = values[2];
+ if (values.length > 2 && !Strings.isEmpty(values[2])) {
+ type = values[2];
+ }
+ if (values.length > 3 && !Strings.isEmpty(values[3])) {
+ domainId = values[3];
}
- return new String[] { username, password, domain };
+ return new String[] { username, password, type, domainId };
}
}
return null;
}
- public void save(final String username, final String password, final String domain) {
- String value = username + VALUE_SEPARATOR + password + VALUE_SEPARATOR + domain;
-
- String encryptedValue = getCrypt().encryptUrlSafe(value);
-
- getCookieUtils().save(cookieKey, encryptedValue);
-
+ public void save(final String username, final String password, final Type type, final Long domainId) {
+ if (type != Type.oauth) {
+ String value = username + VALUE_SEPARATOR + password + VALUE_SEPARATOR + type.name() + VALUE_SEPARATOR + domainId;
+ String encryptedValue = getCrypt().encryptUrlSafe(value);
+ getCookieUtils().save(cookieKey, encryptedValue);
+ }
}
}
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java Tue Jun 10 15:46:38 2014
@@ -19,7 +19,6 @@
package org.apache.openmeetings.web.app;
import static java.text.DateFormat.SHORT;
-import static org.apache.openmeetings.util.AuthLevelUtil.checkAdminLevel;
import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DASHBOARD_SHOW_MYROOMS_KEY;
import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DASHBOARD_SHOW_RSS_KEY;
import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAUT_LANG_KEY;
@@ -31,6 +30,7 @@ import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Calendar;
+import java.util.Collections;
import java.util.Date;
import java.util.HashSet;
import java.util.LinkedHashSet;
@@ -46,7 +46,6 @@ import org.apache.openmeetings.db.dao.la
import org.apache.openmeetings.db.dao.server.SOAPLoginDao;
import org.apache.openmeetings.db.dao.server.SessiondataDao;
import org.apache.openmeetings.db.dao.user.ILdapLoginManagement;
-import org.apache.openmeetings.db.dao.user.IUserManager;
import org.apache.openmeetings.db.dao.user.StateDao;
import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.label.FieldLanguage;
@@ -55,7 +54,10 @@ import org.apache.openmeetings.db.entity
import org.apache.openmeetings.db.entity.server.Sessiondata;
import org.apache.openmeetings.db.entity.user.State;
import org.apache.openmeetings.db.entity.user.User;
+import org.apache.openmeetings.db.entity.user.User.Right;
+import org.apache.openmeetings.db.entity.user.User.Type;
import org.apache.openmeetings.db.util.TimezoneUtil;
+import org.apache.openmeetings.util.OmException;
import org.apache.openmeetings.web.pages.SwfPage;
import org.apache.openmeetings.web.user.dashboard.PrivateRoomsWidgetDescriptor;
import org.apache.openmeetings.web.user.dashboard.RssWidgetDescriptor;
@@ -84,7 +86,7 @@ public class WebSession extends Abstract
public static int MILLIS_IN_MINUTE = 60000;
//private static final Map<String, Locale> LNG_TO_LOCALE_MAP = new HashMap<String, Locale> ();
private long userId = -1;
- private long userLevel = -1; //TODO renew somehow on user edit !!!!
+ private Set<Right> rights = new HashSet<User.Right>(); //TODO renew somehow on user edit !!!!
private long languageId = -1; //TODO renew somehow on user edit !!!!
private String SID = null;
private OmUrlFragment area = null;
@@ -115,7 +117,7 @@ public class WebSession extends Abstract
public void invalidate() {
super.invalidate();
userId = -1;
- userLevel = -1;
+ rights.clear();
SID = null;
sdf = null;
recordingId = null;
@@ -151,15 +153,9 @@ public class WebSession extends Abstract
} catch (Exception e) {
//no-op, will continue to sign-in page
}
- Roles r = null;
- if (externalType != null) {
- invalidate();
- }
- if (isSignedIn()) {
- r = new Roles(Roles.USER);
- if (checkAdminLevel(userLevel)) {
- r.add(Roles.ADMIN);
- }
+ Roles r = new Roles();
+ for (Right right : rights) {
+ r.add(right.name());
}
return r;
}
@@ -170,9 +166,15 @@ public class WebSession extends Abstract
IAuthenticationStrategy strategy = getAuthenticationStrategy();
// get username and password from persistence store
String[] data = strategy.load();
- if ((data != null) && (data.length > 2)) {
+ if (data != null && data.length > 3 && data[2] != null) {
+ Long domainId = null;
+ try {
+ domainId = Long.parseLong(data[3]);
+ } catch (Exception e) {
+ //no-op
+ }
// try to sign in the user
- if (!signIn(data[0], data[1], data[2])) {
+ if (!signIn(data[0], data[1], Type.valueOf(data[2]), domainId)) {
// the loaded credentials are wrong. erase them.
strategy.remove();
}
@@ -200,6 +202,7 @@ public class WebSession extends Abstract
user.setLogin(remoteUser.getUsername()); //FIXME check if login UNIQUE
user.setExternalUserId(remoteUser.getExternalUserId());
user.setExternalUserType(remoteUser.getExternalUserType());
+ user.getRights().add(Right.Room);
user.getAdresses().setEmail(remoteUser.getEmail());
user.setPictureuri(remoteUser.getPictureUrl());
} else {
@@ -226,7 +229,7 @@ public class WebSession extends Abstract
private void setUser(User u) {
userId = u.getUser_id();
- userLevel = u.getLevel_id();
+ rights = Collections.unmodifiableSet(u.getRights());
languageId = u.getLanguage_id();
externalType = u.getExternalUserType();
tz = getBean(TimezoneUtil.class).getTimeZone(u);
@@ -238,25 +241,30 @@ public class WebSession extends Abstract
}
}
- public boolean signIn(String login, String password, String ldapConfigFileName) {
+ public boolean signIn(String login, String password, Type type, Long domainId) {
Sessiondata sessData = getBean(SessiondataDao.class).startsession();
SID = sessData.getSession_id();
- Object _u = Strings.isEmpty(ldapConfigFileName)
- ? getBean(IUserManager.class).loginUser(SID, login, password, null, null, false)
- : getBean(ILdapLoginManagement.class).doLdapLogin(login, password, null, null, SID, ldapConfigFileName);
-
- if (_u instanceof User) {
- User u = (User)_u;
- /* we will allow login in case user 'guess' the password
- if (!checkAdminLevel(u.getLevel_id()) && Type.ldap == u.getType() && Strings.isEmpty(ldapConfigFileName)) {
- //user is LDAP and is not admin, then authentication should be done on the LDAP server (even if the LDAP server is down)
- return false;
+ try {
+ User u = null;
+ switch (type) {
+ case ldap:
+ u = getBean(ILdapLoginManagement.class).login(login, password, domainId);
+ break;
+ case user:
+ /* we will allow login against internal DB in case user 'guess' LDAP password */
+ u = getBean(UserDao.class).login(login, password);
+ break;
+ case oauth:
+ // we did all the checks at this stage, just set the user
+ u = getBean(UserDao.class).getByName(login, Type.oauth);
+ break;
+ default:
+ throw new OmException(-1L);
}
- */
setUser(u);
return true;
- } else if (_u instanceof Long) {
- loginError = (Long)_u;
+ } catch (OmException oe) {
+ loginError = oe.getCode() == null ? -1 : oe.getCode();
}
return false;
}
@@ -349,8 +357,8 @@ public class WebSession extends Abstract
return get().sdf;
}
- public static long getUserLevel() {
- return get().userLevel;
+ public static Set<Right> getRights() {
+ return get().rights;
}
public OmUrlFragment getArea() {
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UserPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UserPanel.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UserPanel.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UserPanel.java Tue Jun 10 15:46:38 2014
@@ -30,7 +30,7 @@ import org.apache.openmeetings.db.entity
import org.apache.openmeetings.web.app.WebSession;
import org.apache.wicket.authroles.authorization.strategies.role.annotations.AuthorizeInstantiation;
-@AuthorizeInstantiation("USER")
+@AuthorizeInstantiation("Dashboard")
public abstract class UserPanel extends BasePanel {
private static final long serialVersionUID = 8607846885689465360L;
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/ActivatePage.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/ActivatePage.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/ActivatePage.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/ActivatePage.java Tue Jun 10 15:46:38 2014
@@ -22,6 +22,8 @@ import java.util.Date;
import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.user.User;
+import org.apache.openmeetings.db.entity.user.User.Right;
+import org.apache.openmeetings.db.util.AuthLevelUtil;
import org.apache.openmeetings.web.app.Application;
import org.apache.wicket.request.mapper.parameter.PageParameters;
@@ -34,9 +36,9 @@ public class ActivatePage extends BaseNo
if (userHash != null) {
User user = Application.getBean(UserDao.class).getUserByActivationHash(userHash);
- if (user != null && user.getStatus() == 0) {
+ if (!AuthLevelUtil.hasLoginLevel(user.getRights())) {
// activate
- user.setStatus(1);
+ user.getRights().add(Right.Login);
user.setUpdatetime(new Date());
Application.getBean(UserDao.class).update(user, null);
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/MainPage.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/MainPage.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/MainPage.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/MainPage.java Tue Jun 10 15:46:38 2014
@@ -24,7 +24,6 @@ import static org.apache.openmeetings.we
import static org.apache.openmeetings.web.app.Application.removeOnlineUser;
import static org.apache.openmeetings.web.app.WebSession.getLanguage;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
-import static org.apache.openmeetings.web.app.WebSession.getUserLevel;
import static org.apache.openmeetings.web.util.OmUrlFragment.CHILD_ID;
import static org.apache.openmeetings.web.util.OmUrlFragment.PROFILE_EDIT;
import static org.apache.openmeetings.web.util.OmUrlFragment.PROFILE_MESSAGES;
@@ -36,6 +35,7 @@ import java.util.List;
import org.apache.openmeetings.db.dao.basic.NavigationDao;
import org.apache.openmeetings.db.entity.basic.Naviglobal;
import org.apache.openmeetings.db.entity.basic.Navimain;
+import org.apache.openmeetings.db.util.AuthLevelUtil;
import org.apache.openmeetings.web.app.Application;
import org.apache.openmeetings.web.app.Client;
import org.apache.openmeetings.web.app.WebSession;
@@ -68,7 +68,7 @@ import org.red5.logging.Red5LoggerFactor
import org.slf4j.Logger;
import org.wicketstuff.urlfragment.UrlFragment;
-@AuthorizeInstantiation("USER")
+@AuthorizeInstantiation({"Admin", "Dashboard", "Room"})
public class MainPage extends BaseInitedPage {
private static final long serialVersionUID = 6421960759218157999L;
private static final Logger log = Red5LoggerFactory.getLogger(MainPage.class, webAppRootKey);
@@ -168,7 +168,7 @@ public class MainPage extends BaseInited
private List<MenuItem> getMainMenu() {
List<MenuItem> menu = new ArrayList<MenuItem>();
- for (Naviglobal gl : getBean(NavigationDao.class).getMainMenu(getUserLevel(), getUserId(), getLanguage())) {
+ for (Naviglobal gl : getBean(NavigationDao.class).getMainMenu(AuthLevelUtil.hasAdminLevel(WebSession.getRights()), getUserId(), getLanguage())) {
MenuItem g = new MenuItem(gl.getLabel().getValue()) {
private static final long serialVersionUID = 1L;
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java Tue Jun 10 15:46:38 2014
@@ -125,7 +125,7 @@ public class ForgetPasswordDialog extend
if (type == Type.email && null == dao.getUserByEmail(n)) {
error(WebSession.getString(318));
}
- if (type == Type.login && null == dao.getUserByName(n, User.Type.user)) {
+ if (type == Type.login && null == dao.getByName(n, User.Type.user)) {
error(WebSession.getString(320));
}
}
@@ -216,7 +216,7 @@ public class ForgetPasswordDialog extend
return new Long(-9);
}
} else if (username.length() > 0) {
- User us = userDao.getUserByName(username, User.Type.user);
+ User us = userDao.getByName(username, User.Type.user);
if (us != null) {
sendHashByUser(us, appLink, userDao);
return new Long(-4);
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java Tue Jun 10 15:46:38 2014
@@ -196,10 +196,11 @@ public class RegisterDialog extends Abst
login + CalendarPatterns.getDateWithTimeByMiliSeconds(new Date()));
try {
- getBean(IUserManager.class).registerUserInit(3, 1, 0, 1, login, password, lastName, firstName, email,
- null /* age/birthday */, "" /* street */, "" /* additionalname */, "" /* fax */, "" /* zip */, state.getState_id(),
- "" /* town */, lang.getLanguage_id(), true /* sendWelcomeMessage */,
- Arrays.asList(getBean(ConfigurationDao.class).getConfValue("default_domain_id", Long.class, null)),
+ getBean(IUserManager.class).registerUserInit(UserDao.getDefaultRights(), login, password, lastName
+ , firstName, email, null /* age/birthday */, "" /* street */
+ , "" /* additionalname */, "" /* fax */, "" /* zip */, state.getState_id()
+ , "" /* town */, lang.getLanguage_id(), true /* sendWelcomeMessage */
+ , Arrays.asList(getBean(ConfigurationDao.class).getConfValue("default_domain_id", Long.class, null)),
"" /* phone */, false, sendConfirmation, TimeZone.getTimeZone(tzModel.getObject()),
false /* forceTimeZoneCheck */, "" /* userOffers */, "" /* userSearchs */, false /* showContactData */,
true /* showContactDataToContacts */, hash);
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java Tue Jun 10 15:46:38 2014
@@ -34,6 +34,7 @@ import org.apache.openmeetings.db.dao.se
import org.apache.openmeetings.db.entity.basic.ErrorValue;
import org.apache.openmeetings.db.entity.server.LdapConfig;
import org.apache.openmeetings.db.entity.server.OAuthServer;
+import org.apache.openmeetings.db.entity.user.User.Type;
import org.apache.openmeetings.web.app.Application;
import org.apache.openmeetings.web.app.OmAuthenticationStrategy;
import org.apache.openmeetings.web.app.WebSession;
@@ -63,7 +64,6 @@ import org.apache.wicket.model.AbstractR
import org.apache.wicket.model.Model;
import org.apache.wicket.model.PropertyModel;
import org.apache.wicket.request.mapper.parameter.PageParameters;
-import org.apache.wicket.util.string.Strings;
import com.googlecode.wicket.jquery.core.JQueryBehavior;
import com.googlecode.wicket.jquery.core.Options;
@@ -84,7 +84,6 @@ public class SignInDialog extends Abstra
private RegisterDialog r;
private ForgetPasswordDialog f;
private LdapConfig domain;
- private String ldapConfigFileName;
private FeedbackPanel feedback = new FeedbackPanel("feedback");
public SignInDialog(String id) {
@@ -182,16 +181,16 @@ public class SignInDialog extends Abstra
@Override
protected void onSubmit(AjaxRequestTarget target) {
- ldapConfigFileName = domain.getConfigFileName() == null ? "" : domain.getConfigFileName();
if (domain.getAddDomainToUserName()) {
login = login + "@" + domain.getDomain();
}
OmAuthenticationStrategy strategy = getAuthenticationStrategy();
WebSession ws = WebSession.get();
- if (ws.signIn(login, password, ldapConfigFileName)) {
+ Type type = domain.getLdapConfigId() > 0 ? Type.ldap : Type.user;
+ if (ws.signIn(login, password, type, domain.getLdapConfigId())) {
setResponsePage(Application.get().getHomePage());
if (rememberMe) {
- strategy.save(login, password, ldapConfigFileName);
+ strategy.save(login, password, type, domain.getLdapConfigId());
} else {
strategy.remove();
}
@@ -285,16 +284,16 @@ public class SignInDialog extends Abstra
}));
btn.add(icon);
btn.add(new Label("label", item.getModelObject().getName()))
- .add(new AjaxEventBehavior("click") {
- private static final long serialVersionUID = 1L;
-
- @Override
- protected void onEvent(AjaxRequestTarget target) {
- PageParameters parameters = new PageParameters();
- parameters.add("oauthid", item.getModelObject().getId());
- setResponsePage(SignInPage.class, parameters);
- }
- });
+ .add(new AjaxEventBehavior("click") {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ protected void onEvent(AjaxRequestTarget target) {
+ PageParameters parameters = new PageParameters();
+ parameters.add("oauthid", item.getModelObject().getId());
+ setResponsePage(SignInPage.class, parameters);
+ }
+ });
item.add(btn);
}
}).setVisible(allowOAuthLogin()));
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java Tue Jun 10 15:46:38 2014
@@ -33,6 +33,7 @@ import java.net.URLEncoder;
import java.security.NoSuchAlgorithmException;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
+import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.Random;
@@ -172,8 +173,7 @@ public class SignInPage extends BaseInit
}
public static String getRedirectUri(OAuthServer server, Component component) {
- String baseUrl = RequestCycle.get().getUrlRenderer().renderFullUrl(
- Url.parse(component.urlFor(SignInPage.class,null).toString()));
+ String baseUrl = RequestCycle.get().getUrlRenderer().renderFullUrl(Url.parse(component.urlFor(SignInPage.class,null).toString()));
return baseUrl + "?oauthid=" + server.getId();
}
@@ -326,7 +326,7 @@ public class SignInPage extends BaseInit
String firstname = params.get("firstname");
if (firstname == null) firstname = "";
if (lastname == null) lastname = "";
- User user = userDao.getUserByName(login, Type.oauth);
+ User user = userDao.getByName(login, Type.oauth);
// generate random password
byte[] rawPass = new byte[16];
Random rnd = new Random();
@@ -345,18 +345,19 @@ public class SignInPage extends BaseInit
}
user = userDao.get(res);
user.setType(Type.oauth);
- user.setExternalUserType("oauth2." + serverId);
+ user.setDomainId(serverId);
userDao.update(user, null);
} else { // just change password
// check user type before changing password, it must be match oauthServerId
- if (!("oauth2." + serverId).equals(user.getExternalUserType())) {
+ if (user.getDomainId() == null || serverId != user.getDomainId()) {
log.error("User already registered! with different OAuth server");
return;
}
+ user.setLastlogin(new Date());
user = userDao.update(user, pass, -1);
}
- if (WebSession.get().signIn(login, pass, null)) {
+ if (WebSession.get().signIn(login, pass, Type.oauth, serverId)) {
setResponsePage(Application.get().getHomePage());
} else {
log.error("Failed to login via OAuth2!");
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java Tue Jun 10 15:46:38 2014
@@ -40,6 +40,7 @@ import org.apache.wicket.ajax.AjaxReques
import org.apache.wicket.ajax.json.JSONArray;
import org.apache.wicket.ajax.json.JSONException;
import org.apache.wicket.ajax.json.JSONObject;
+import org.apache.wicket.authroles.authorization.strategies.role.annotations.AuthorizeInstantiation;
import org.apache.wicket.behavior.AttributeAppender;
import org.apache.wicket.markup.head.IHeaderResponse;
import org.apache.wicket.markup.head.JavaScriptHeaderItem;
@@ -53,6 +54,7 @@ import org.apache.wicket.request.resourc
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+@AuthorizeInstantiation("Room")
public class RoomPanel extends BasePanel {
private static final long serialVersionUID = 1L;
private static final Logger log = Red5LoggerFactory.getLogger(RoomPanel.class, webAppRootKey);
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/ChatPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/ChatPanel.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/ChatPanel.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/ChatPanel.java Tue Jun 10 15:46:38 2014
@@ -29,11 +29,12 @@ import java.util.Date;
import org.apache.openmeetings.db.dao.basic.ChatDao;
import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.basic.ChatMessage;
-import org.apache.openmeetings.web.common.UserPanel;
+import org.apache.openmeetings.web.common.BasePanel;
import org.apache.wicket.Component;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.json.JSONException;
import org.apache.wicket.ajax.json.JSONObject;
+import org.apache.wicket.authroles.authorization.strategies.role.annotations.AuthorizeInstantiation;
import org.apache.wicket.behavior.Behavior;
import org.apache.wicket.markup.head.IHeaderResponse;
import org.apache.wicket.markup.head.JavaScriptHeaderItem;
@@ -54,7 +55,8 @@ import com.googlecode.wicket.jquery.ui.f
import com.googlecode.wicket.jquery.ui.plugins.emoticons.EmoticonsBehavior;
import com.googlecode.wicket.jquery.ui.plugins.wysiwyg.WysiwygEditor;
-public class ChatPanel extends UserPanel {
+@AuthorizeInstantiation({"Dashboard", "Room"})
+public class ChatPanel extends BasePanel {
private static final Logger log = Red5LoggerFactory.getLogger(ChatPanel.class, webAppRootKey);
private static final long serialVersionUID = -9144707674886211557L;
private static final String MESSAGE_AREA_ID = "messageArea";
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml Tue Jun 10 15:46:38 2014
@@ -68,7 +68,6 @@
<class>org.apache.openmeetings.db.entity.user.Salutation</class>
<class>org.apache.openmeetings.db.entity.user.UserContact</class>
<class>org.apache.openmeetings.db.entity.user.Userdata</class>
- <class>org.apache.openmeetings.db.entity.user.Userlevel</class>
<class>org.apache.openmeetings.db.entity.user.User</class>
<class>org.apache.openmeetings.db.entity.file.FileExplorerItem</class>
<class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml Tue Jun 10 15:46:38 2014
@@ -68,7 +68,6 @@
<class>org.apache.openmeetings.db.entity.user.Salutation</class>
<class>org.apache.openmeetings.db.entity.user.UserContact</class>
<class>org.apache.openmeetings.db.entity.user.Userdata</class>
- <class>org.apache.openmeetings.db.entity.user.Userlevel</class>
<class>org.apache.openmeetings.db.entity.user.User</class>
<class>org.apache.openmeetings.db.entity.file.FileExplorerItem</class>
<class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml Tue Jun 10 15:46:38 2014
@@ -67,7 +67,6 @@
<class>org.apache.openmeetings.db.entity.user.Salutation</class>
<class>org.apache.openmeetings.db.entity.user.UserContact</class>
<class>org.apache.openmeetings.db.entity.user.Userdata</class>
- <class>org.apache.openmeetings.db.entity.user.Userlevel</class>
<class>org.apache.openmeetings.db.entity.user.User</class>
<class>org.apache.openmeetings.db.entity.file.FileExplorerItem</class>
<class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml Tue Jun 10 15:46:38 2014
@@ -68,7 +68,6 @@
<class>org.apache.openmeetings.db.entity.user.Salutation</class>
<class>org.apache.openmeetings.db.entity.user.UserContact</class>
<class>org.apache.openmeetings.db.entity.user.Userdata</class>
- <class>org.apache.openmeetings.db.entity.user.Userlevel</class>
<class>org.apache.openmeetings.db.entity.user.User</class>
<class>org.apache.openmeetings.db.entity.file.FileExplorerItem</class>
<class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml Tue Jun 10 15:46:38 2014
@@ -68,7 +68,6 @@
<class>org.apache.openmeetings.db.entity.user.Salutation</class>
<class>org.apache.openmeetings.db.entity.user.UserContact</class>
<class>org.apache.openmeetings.db.entity.user.Userdata</class>
- <class>org.apache.openmeetings.db.entity.user.Userlevel</class>
<class>org.apache.openmeetings.db.entity.user.User</class>
<class>org.apache.openmeetings.db.entity.file.FileExplorerItem</class>
<class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml Tue Jun 10 15:46:38 2014
@@ -68,7 +68,6 @@
<class>org.apache.openmeetings.db.entity.user.Salutation</class>
<class>org.apache.openmeetings.db.entity.user.UserContact</class>
<class>org.apache.openmeetings.db.entity.user.Userdata</class>
- <class>org.apache.openmeetings.db.entity.user.Userlevel</class>
<class>org.apache.openmeetings.db.entity.user.User</class>
<class>org.apache.openmeetings.db.entity.file.FileExplorerItem</class>
<class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/openmeetings-applicationContext.xml
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/openmeetings-applicationContext.xml?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/openmeetings-applicationContext.xml (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/openmeetings-applicationContext.xml Tue Jun 10 15:46:38 2014
@@ -276,7 +276,6 @@
<bean id="soapLoginDao" class="org.apache.openmeetings.db.dao.server.SOAPLoginDao" />
<bean id="userContactsDao" class="org.apache.openmeetings.db.dao.user.UserContactsDao" />
<bean id="userDao" class="org.apache.openmeetings.db.dao.user.UserDao" />
- <bean id="userLevelDao" class="org.apache.openmeetings.db.dao.user.UserLevelDao" />
<bean id="serverDao" class="org.apache.openmeetings.db.dao.server.ServerDao" />
<bean id="chatDao" class="org.apache.openmeetings.db.dao.basic.ChatDao" />
<bean id="clientDao" class="org.apache.openmeetings.db.dao.room.ClientDao" />
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java Tue Jun 10 15:46:38 2014
@@ -22,6 +22,7 @@ import static org.apache.openmeetings.we
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
+import org.apache.openmeetings.db.entity.user.User.Type;
import org.apache.openmeetings.web.app.WebSession;
import org.apache.wicket.util.tester.WicketTester;
import org.junit.After;
@@ -39,9 +40,9 @@ public class AbstractWicketTester extend
public void login(String login, String password) {
if (login != null && password != null) {
- WebSession.get().signIn(login, password, "");
+ WebSession.get().signIn(login, password, Type.user, null);
} else {
- WebSession.get().signIn(username, userpass, "");
+ WebSession.get().signIn(username, userpass, Type.user, null);
}
assertTrue("Web session is not signed in for user: " + (login != null ? login : username), WebSession.get().isSignedIn());
}
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/invitiation/TestInvitation.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/invitiation/TestInvitation.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/invitiation/TestInvitation.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/invitiation/TestInvitation.java Tue Jun 10 15:46:38 2014
@@ -18,43 +18,38 @@
*/
package org.apache.openmeetings.test.invitiation;
+import java.text.SimpleDateFormat;
import java.util.Date;
import org.apache.openmeetings.core.remote.InvitationService;
import org.apache.openmeetings.core.remote.MainService;
-import org.apache.openmeetings.db.dao.user.IUserManager;
+import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.server.Sessiondata;
import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.test.AbstractJUnitDefaults;
+import org.apache.openmeetings.webservice.UserWebService;
import org.junit.Test;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
public class TestInvitation extends AbstractJUnitDefaults {
-
- private static final Logger log = LoggerFactory.getLogger(TestInvitation.class);
-
@Autowired
private InvitationService invitationService;
@Autowired
private MainService mService;
@Autowired
- private IUserManager userManager;
+ private UserWebService userWebService;
+ @Autowired
+ private UserDao userDao;
@Test
public void testSendInvitationLink() {
- try {
- Sessiondata sessionData = mService.getsessiondata();
-
- User us = (User) userManager.loginUser(sessionData.getSession_id(), username, userpass, null, null, false);
-
- invitationService.sendInvitationHash(sessionData.getSession_id(), username, "message", "sebawagner@apache.org",
- "subject", 1L, "", false, "", 1, new Date(), "12:00", new Date(), "14:00", 1L, us.getTimeZoneId(), true);
-
- } catch (Exception err) {
- log.error("[testSendInvitationLink]", err);
- }
+ Sessiondata sessionData = mService.getsessiondata();
+
+ Long uid = userWebService.loginUser(sessionData.getSession_id(), username, userpass);
+ User us = userDao.get(uid);
+
+ String date = new SimpleDateFormat("dd.MM.yyyy").format(new Date());
+ invitationService.sendInvitationHash(sessionData.getSession_id(), "Testname", "Testlastname", "message", "sebawagner@apache.org",
+ "subject", 1L, "", false, "", 1, date, "12:00", date, "14:00", 1L, us.getTimeZoneId(), true);
}
-
}
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/navi/TestNavi.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/navi/TestNavi.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/navi/TestNavi.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/navi/TestNavi.java Tue Jun 10 15:46:38 2014
@@ -18,8 +18,8 @@
*/
package org.apache.openmeetings.test.navi;
-import static org.junit.Assert.assertTrue;
import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
import java.util.List;
@@ -38,7 +38,7 @@ public class TestNavi extends AbstractJU
@Test
public void testGetNavi(){
- List<Naviglobal> ll = navimanagement.getMainMenu(3L, 1L, 1L);
+ List<Naviglobal> ll = navimanagement.getMainMenu(true, 1L, 1L);
assertTrue("GlobalNavi size should be greater than zero: " + ll.size(), ll.size() > 0);
System.out.println("NaviGlobal size: " + ll.size());
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/user/TestUserContact.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/user/TestUserContact.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/user/TestUserContact.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/user/TestUserContact.java Tue Jun 10 15:46:38 2014
@@ -21,6 +21,7 @@ package org.apache.openmeetings.test.use
import static org.apache.openmeetings.web.app.WebSession.getUserId;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
import java.util.List;
@@ -42,6 +43,11 @@ public class TestUserContact extends Abs
Random random = new Random();
@Test
+ public void testGetUser() throws Exception {
+ assertNull("Null should be returned in case User does not exist", userDao.get(Long.MAX_VALUE));
+ }
+
+ @Test
public void createUserWithOrganisation() throws Exception {
int rnd = random.nextInt();
User u = getUser(rnd);
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/userdata/TestLogin.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/userdata/TestLogin.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/userdata/TestLogin.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/userdata/TestLogin.java Tue Jun 10 15:46:38 2014
@@ -20,27 +20,21 @@ package org.apache.openmeetings.test.use
import static org.junit.Assert.assertNotNull;
-import org.apache.openmeetings.core.remote.MainService;
-import org.apache.openmeetings.db.dao.user.IUserManager;
-import org.apache.openmeetings.db.entity.server.Sessiondata;
+import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.test.AbstractJUnitDefaults;
+import org.apache.openmeetings.util.OmException;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
public class TestLogin extends AbstractJUnitDefaults {
@Autowired
- private MainService mService;
-
- @Autowired
- private IUserManager userManager;
+ private UserDao userDao;
@Test
- public void testTestLogin(){
- Sessiondata sessionData = mService.getsessiondata();
-
- User us = (User) userManager.loginUser(sessionData.getSession_id(), username, userpass, null, null, false);
+ public void testTestLogin() throws OmException {
+ User us = userDao.login(username, userpass);
assertNotNull("User is unable to login", us);
Modified: openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java Tue Jun 10 15:46:38 2014
@@ -24,6 +24,7 @@ import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
+import java.util.Set;
import javax.jws.WebService;
import javax.ws.rs.Path;
@@ -40,14 +41,14 @@ import org.apache.openmeetings.db.dao.ro
import org.apache.openmeetings.db.dao.room.RoomTypeDao;
import org.apache.openmeetings.db.dao.server.SessiondataDao;
import org.apache.openmeetings.db.dao.user.UserDao;
-import org.apache.openmeetings.db.dao.user.IUserManager;
import org.apache.openmeetings.db.entity.calendar.Appointment;
import org.apache.openmeetings.db.entity.calendar.AppointmentCategory;
import org.apache.openmeetings.db.entity.calendar.AppointmentReminderTyps;
import org.apache.openmeetings.db.entity.calendar.MeetingMember;
import org.apache.openmeetings.db.entity.user.User;
+import org.apache.openmeetings.db.entity.user.User.Right;
+import org.apache.openmeetings.db.util.AuthLevelUtil;
import org.apache.openmeetings.db.util.TimezoneUtil;
-import org.apache.openmeetings.util.AuthLevelUtil;
import org.apache.openmeetings.webservice.dto.ServiceException;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
@@ -74,8 +75,6 @@ public class CalendarWebService {
@Autowired
private SessiondataDao sessiondataDao;
@Autowired
- private IUserManager userManager;
- @Autowired
private UserDao userDao;
@Autowired
private RoomManager roomManager;
@@ -108,8 +107,7 @@ public class CalendarWebService {
+ ", enddate - " + endtime);
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
return appointmentDao.getAppointmentsByRange(users_id, starttime, endtime);
}
@@ -139,8 +137,7 @@ public class CalendarWebService {
+ ", enddate - " + endtime);
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+ if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
return appointmentDao.getAppointmentsByRange(userId, starttime, endtime);
}
@@ -162,8 +159,7 @@ public class CalendarWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
return appointmentLogic.getNextAppointment();
}
@@ -187,8 +183,7 @@ public class CalendarWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
return appointmentLogic.getNextAppointment();
}
@@ -215,8 +210,7 @@ public class CalendarWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
return appointmentLogic
.searchAppointmentByName(appointmentName);
@@ -293,9 +287,7 @@ public class CalendarWebService {
Long users_id = sessiondataDao.checkSession(SID);
log.debug("saveAppointMent users_id:" + users_id);
- Long user_level = userManager.getUserLevelByID(users_id);
-
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
Appointment a = appointmentLogic.getAppointment(appointmentName, appointmentLocation, appointmentDescription,
appointmentstart, appointmentend, isDaily, isWeekly, isMonthly, isYearly, categoryId, remind,
mmClient, roomType, languageId, isPasswordProtected, password, roomId, users_id);
@@ -327,16 +319,15 @@ public class CalendarWebService {
* @return - id of appointment updated
*/
public Long updateAppointmentTimeOnly(String SID, Long appointmentId,
- Date appointmentstart, Date appointmentend,
- Long languageId) {
+ Date appointmentstart, Date appointmentend, Long languageId) {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ Set<Right> rights = userDao.getRights(users_id);
+ if (AuthLevelUtil.hasUserLevel(rights)) {
Appointment a = appointmentDao.get(appointmentId);
- if (!AuthLevelUtil.checkAdminLevel(user_level) && !a.getOwner().getUser_id().equals(users_id)) {
+ if (!AuthLevelUtil.hasAdminLevel(rights) && !a.getOwner().getUser_id().equals(users_id)) {
throw new ServiceException("The Appointment cannot be updated by the given user");
}
if (!a.getStart().equals(appointmentstart) || !a.getEnd().equals(appointmentend)) {
@@ -417,11 +408,11 @@ public class CalendarWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
+ Set<Right> rights = userDao.getRights(users_id);
- if (AuthLevelUtil.checkWebServiceLevel(user_level) || AuthLevelUtil.checkAdminLevel(user_level)) {
+ if (AuthLevelUtil.hasWebServiceLevel(rights) || AuthLevelUtil.hasAdminLevel(rights)) {
// fine
- } else if (AuthLevelUtil.checkUserLevel(user_level)) {
+ } else if (AuthLevelUtil.hasUserLevel(rights)) {
// check if the appointment belongs to the current user
Appointment a = appointmentDao.get(appointmentId);
if (!a.getOwner().getUser_id().equals(users_id)) {
@@ -483,12 +474,12 @@ public class CalendarWebService {
public Long deleteAppointment(String SID, Long appointmentId, Long language_id) throws ServiceException {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
+ Set<Right> rights = userDao.getRights(users_id);
Appointment a = appointmentDao.get(appointmentId);
- if (AuthLevelUtil.checkWebServiceLevel(user_level) || AuthLevelUtil.checkAdminLevel(user_level)) {
+ if (AuthLevelUtil.hasWebServiceLevel(rights) || AuthLevelUtil.hasAdminLevel(rights)) {
// fine
- } else if (AuthLevelUtil.checkUserLevel(user_level)) {
+ } else if (AuthLevelUtil.hasUserLevel(rights)) {
// check if the appointment belongs to the current user
if (!a.getOwner().getUser_id().equals(users_id)) {
throw new ServiceException("The Appointment cannot be updated by the given user");
@@ -496,7 +487,7 @@ public class CalendarWebService {
} else {
throw new ServiceException("Not allowed to preform that action, Authenticate the SID first");
}
- appointmentDao.delete(a, users_id);
+ appointmentDao.delete(a, users_id); //FIXME check this !!!!
return a.getId();
} catch (Exception err) {
log.error("[deleteAppointment]", err);
@@ -516,8 +507,7 @@ public class CalendarWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
Appointment appointment = new Appointment();
@@ -551,9 +541,8 @@ public class CalendarWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
List<AppointmentCategory> res = appointmentCategoryDao
.getAppointmentCategoryList();
@@ -590,8 +579,7 @@ public class CalendarWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
User user = userDao.get(users_id);
long language_id = (user == null) ? 1 : user.getLanguage_id();
Modified: openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java Tue Jun 10 15:46:38 2014
@@ -38,13 +38,12 @@ import org.apache.openmeetings.core.data
import org.apache.openmeetings.core.documents.LoadLibraryPresentation;
import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
import org.apache.openmeetings.db.dao.server.SessiondataDao;
-import org.apache.openmeetings.db.dao.user.IUserManager;
import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.dto.file.FileExplorerObject;
import org.apache.openmeetings.db.dto.file.LibraryPresentation;
import org.apache.openmeetings.db.entity.file.FileExplorerItem;
import org.apache.openmeetings.db.entity.user.User;
-import org.apache.openmeetings.util.AuthLevelUtil;
+import org.apache.openmeetings.db.util.AuthLevelUtil;
import org.apache.openmeetings.util.OmFileHelper;
import org.apache.openmeetings.util.StoredFile;
import org.apache.openmeetings.util.process.ConverterProcessResultList;
@@ -73,8 +72,6 @@ public class FileWebService {
@Autowired
private SessiondataDao sessiondataDao;
@Autowired
- private IUserManager userManager;
- @Autowired
private UserDao userDao;
@Autowired
private FileExplorerItemDao fileExplorerItemDao;
@@ -128,9 +125,8 @@ public class FileWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long User_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkWebServiceLevel(User_level)) {
+ if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
URL url = new URL(path);
URLConnection uc = url.openConnection();
@@ -213,9 +209,8 @@ public class FileWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long User_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkWebServiceLevel(User_level)) {
+ if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
URL url = new URL(path);
URLConnection uc = url.openConnection();
@@ -285,9 +280,8 @@ public class FileWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long User_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkWebServiceLevel(User_level)) {
+ if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
User userExternal = userDao.getExternalUser(externalUserId, externalType);
@@ -351,9 +345,8 @@ public class FileWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long User_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkWebServiceLevel(User_level)) {
+ if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
log.debug("addFolder " + parentFileExplorerItemId);
@@ -409,8 +402,7 @@ public class FileWebService {
String fileName, Long room_id, Boolean isOwner) throws ServiceException {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
log.debug("addFolder " + parentFileExplorerItemId);
@@ -465,9 +457,8 @@ public class FileWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long User_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkWebServiceLevel(User_level)) {
+ if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
fileExplorerItemDao.deleteFileExplorerItemByExternalIdAndType(
externalFilesid, externalType);
@@ -496,9 +487,8 @@ public class FileWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long User_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkWebServiceLevel(User_level)) {
+ if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
fileExplorerItemDao.deleteFileExplorerItem(fileExplorerItemId);
@@ -526,9 +516,8 @@ public class FileWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long User_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkUserLevel(User_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
// TODO: Check if user has access or not to the file
@@ -574,9 +563,8 @@ public class FileWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+ if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
File working_dir = new File(OmFileHelper.getUploadProfilesDir(), parentFolder);
log.debug("############# working_dir : " + working_dir);
@@ -620,10 +608,8 @@ public class FileWebService {
try {
Long webservice_users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager
- .getUserLevelByID(webservice_users_id);
- if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+ if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(webservice_users_id))) {
log.debug("room_id " + room_id);
@@ -691,9 +677,8 @@ public class FileWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
log.debug("room_id " + room_id);
@@ -768,10 +753,8 @@ public class FileWebService {
try {
Long webservice_users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager
- .getUserLevelByID(webservice_users_id);
- if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+ if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(webservice_users_id))) {
log.debug("parentFileExplorerItemId "
+ parentFileExplorerItemId);
@@ -818,9 +801,8 @@ public class FileWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
log.debug("parentFileExplorerItemId "
+ parentFileExplorerItemId);
@@ -863,10 +845,8 @@ public class FileWebService {
try {
Long webservice_users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager
- .getUserLevelByID(webservice_users_id);
- if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+ if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(webservice_users_id))) {
log.debug("deleteFileOrFolder " + fileExplorerItemId);
@@ -899,9 +879,8 @@ public class FileWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
// TODO: check if this user is allowed to change this file
/*
@@ -955,10 +934,8 @@ public class FileWebService {
try {
Long webservice_users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager
- .getUserLevelByID(webservice_users_id);
- if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+ if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(webservice_users_id))) {
log.debug("deleteFileOrFolder " + fileExplorerItemId);
@@ -1014,9 +991,8 @@ public class FileWebService {
try {
Long users_id = sessiondataDao.checkSession(SID);
- Long user_level = userManager.getUserLevelByID(users_id);
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
// A test is required that checks if the user is allowed to move the file
Modified: openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/JabberWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/JabberWebService.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/JabberWebService.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/JabberWebService.java Tue Jun 10 15:46:38 2014
@@ -35,7 +35,6 @@ import org.apache.openmeetings.db.dao.ro
import org.apache.openmeetings.db.dao.room.RoomDao;
import org.apache.openmeetings.db.dao.server.SessiondataDao;
import org.apache.openmeetings.db.dao.user.UserDao;
-import org.apache.openmeetings.db.dao.user.IUserManager;
import org.apache.openmeetings.db.dto.room.RoomDTO;
import org.apache.openmeetings.db.entity.room.Invitation;
import org.apache.openmeetings.db.entity.room.Invitation.Valid;
@@ -43,8 +42,8 @@ import org.apache.openmeetings.db.entity
import org.apache.openmeetings.db.entity.room.RoomOrganisation;
import org.apache.openmeetings.db.entity.user.Organisation_Users;
import org.apache.openmeetings.db.entity.user.User;
+import org.apache.openmeetings.db.util.AuthLevelUtil;
import org.apache.openmeetings.db.util.TimezoneUtil;
-import org.apache.openmeetings.util.AuthLevelUtil;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
@@ -64,8 +63,6 @@ public class JabberWebService {
private static final Logger log = Red5LoggerFactory.getLogger(JabberWebService.class, webAppRootKey);
@Autowired
- private IUserManager userManager;
- @Autowired
private UserDao userDao;
@Autowired
private SessiondataDao sessiondataDao;
@@ -129,10 +126,9 @@ public class JabberWebService {
* @return number of users as int
*/
public int getUserCount(String SID, Long roomId) {
- Long users_id = this.sessiondataDao.checkSession(SID);
- Long user_level = this.userManager.getUserLevelByID(users_id);
+ Long users_id = sessiondataDao.checkSession(SID);
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
return conferenceService.getRoomClientsListByRoomId(roomId).size();
}
return -1;
@@ -148,10 +144,9 @@ public class JabberWebService {
* @return hash to enter the room
*/
public String getInvitationHash(String SID, String username, Long room_id) {
- Long users_id = this.sessiondataDao.checkSession(SID);
- Long user_level = this.userManager.getUserLevelByID(users_id);
+ Long users_id = sessiondataDao.checkSession(SID);
- if (AuthLevelUtil.checkUserLevel(user_level)) {
+ if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
User invitee = userDao.getContact(username, username, username, users_id);
Invitation invitation = invitationManager.getInvitation(invitee, roomDao.get(room_id),
false, "", Valid.OneTime, userDao.get(users_id), 1L, null, null, null);