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 [1/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...

Author: solomax
Date: Tue Jun 10 15:46:38 2014
New Revision: 1601669

URL: http://svn.apache.org/r1601669
Log:
[OPENMEETINGS-1017] ACLs were added to OM

Added:
    openmeetings/branches/3.0.x/src/util/java/org/apache/openmeetings/util/OmException.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/AuthLevelUtil.java
      - copied, changed from r1601668, openmeetings/trunk/singlewebapp/openmeetings-util/src/main/java/org/apache/openmeetings/util/AuthLevelUtil.java
    openmeetings/trunk/singlewebapp/openmeetings-util/src/main/java/org/apache/openmeetings/util/OmException.java
Removed:
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/UserLevelDao.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Userlevel.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserLevelDao.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/Userlevel.java
    openmeetings/trunk/singlewebapp/openmeetings-util/src/main/java/org/apache/openmeetings/util/AuthLevelUtil.java
Modified:
    openmeetings/branches/3.0.x/WebContent/src/modules/invitation/invitationQuickLoader.lzx
    openmeetings/branches/3.0.x/docs/UserService.html
    openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/CalendarWebService.java
    openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/FileWebService.java
    openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/JabberWebService.java
    openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/RoomWebService.java
    openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/ServerWebService.java
    openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/UserWebService.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/basic/NavigationDao.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/room/RoomDao.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/ILdapLoginManagement.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/IUserManager.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/UserDao.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dto/user/UserDTO.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/room/Room.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/server/LdapConfig.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Address.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/User.java
    openmeetings/branches/3.0.x/src/install/java/org/apache/openmeetings/backup/BackupExport.java
    openmeetings/branches/3.0.x/src/install/java/org/apache/openmeetings/backup/BackupImport.java
    openmeetings/branches/3.0.x/src/install/java/org/apache/openmeetings/installation/ImportInitvalues.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/data/conference/RoomManager.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/data/user/UserManager.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/ldap/LdapLoginManagement.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/ConferenceLibrary.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/ConferenceService.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/FLVRecorderService.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/InvitationService.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/MainService.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/PrintService.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/UserService.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/WhiteBoardService.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/servlet/outputhandler/AbstractUploadController.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/servlet/outputhandler/DownloadHandler.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/servlet/outputhandler/ExportToImage.java
    openmeetings/branches/3.0.x/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml
    openmeetings/branches/3.0.x/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml
    openmeetings/branches/3.0.x/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml
    openmeetings/branches/3.0.x/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml
    openmeetings/branches/3.0.x/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml
    openmeetings/branches/3.0.x/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml
    openmeetings/branches/3.0.x/src/main/webapp/WEB-INF/classes/openmeetings-applicationContext.xml
    openmeetings/branches/3.0.x/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java
    openmeetings/branches/3.0.x/src/test/java/org/apache/openmeetings/test/invitiation/TestInvitation.java
    openmeetings/branches/3.0.x/src/test/java/org/apache/openmeetings/test/navi/TestNavi.java
    openmeetings/branches/3.0.x/src/test/java/org/apache/openmeetings/test/user/TestUserContact.java
    openmeetings/branches/3.0.x/src/test/java/org/apache/openmeetings/test/userdata/TestLogin.java
    openmeetings/branches/3.0.x/src/util/java/org/apache/openmeetings/util/AuthLevelUtil.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/admin/AdminPanel.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/admin/users/UserForm.html
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/admin/users/UserForm.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/app/OmAuthenticationStrategy.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/app/WebSession.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/MenuPanel.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/UserPanel.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/pages/ActivatePage.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/pages/MainPage.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/pages/auth/SignInPage.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/ChatPanel.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/rooms/RoomPanel.java
    openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/conference/RoomManager.java
    openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java
    openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceLibrary.java
    openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceService.java
    openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/FLVRecorderService.java
    openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/InvitationService.java
    openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MainService.java
    openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/PrintService.java
    openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/UserService.java
    openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java
    openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/servlet/outputhandler/AbstractUploadController.java
    openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/servlet/outputhandler/DownloadHandler.java
    openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/servlet/outputhandler/ExportToImage.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/NavigationDao.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/ILdapLoginManagement.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/IUserManager.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/UserDTO.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/server/LdapConfig.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/Address.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/User.java
    openmeetings/trunk/singlewebapp/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
    openmeetings/trunk/singlewebapp/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
    openmeetings/trunk/singlewebapp/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
    openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/gui/ScreenSharerFrame.java
    openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/jnlp/templates/template.jnlp
    openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminPanel.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UserForm.html
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UserForm.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/OmAuthenticationStrategy.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UserPanel.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/ActivatePage.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/MainPage.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/ChatPanel.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/WEB-INF/classes/openmeetings-applicationContext.xml
    openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/invitiation/TestInvitation.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/navi/TestNavi.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/user/TestUserContact.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/test/java/org/apache/openmeetings/test/userdata/TestLogin.java
    openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java
    openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
    openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/JabberWebService.java
    openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
    openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ServerWebService.java
    openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java

Modified: openmeetings/branches/3.0.x/WebContent/src/modules/invitation/invitationQuickLoader.lzx
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/WebContent/src/modules/invitation/invitationQuickLoader.lzx?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/WebContent/src/modules/invitation/invitationQuickLoader.lzx (original)
+++ openmeetings/branches/3.0.x/WebContent/src/modules/invitation/invitationQuickLoader.lzx Tue Jun 10 15:46:38 2014
@@ -121,7 +121,7 @@
 			var lName = invitee.lastname == null ? email : invitee.lastname;
 			
 			canvas.setAttribute('currentuser', email);
-			canvas.setAttribute('user_id', -1);
+			canvas.setAttribute('user_id', -invitee.user_id);
 			canvas.setAttribute('firstName', fName);
 			canvas.setAttribute('lastName', lName);
 			canvas.setAttribute('mail', email);

Modified: openmeetings/branches/3.0.x/docs/UserService.html
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/docs/UserService.html?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/docs/UserService.html (original)
+++ openmeetings/branches/3.0.x/docs/UserService.html Tue Jun 10 15:46:38 2014
@@ -71,7 +71,7 @@
                 </div>
                                                <div>
                 <a href="#addNewUser"><b>addNewUser</b></a><br/>
-                <div class="navigation_comment"><i >Adds a new Usre like through the Frontend, but also does activates the
+                <div class="navigation_comment"><i >Adds a new User like through the Frontend, but also does activates the
  Account To do SSO see the methods to create a hash and use those ones!</i></div>
                 </div>
                                                <div>
@@ -362,7 +362,7 @@
     			       			    			)
     			</i><br/>
     			<p>
-    			  Adds a new Usre like through the Frontend, but also does activates the
+    			  Adds a new User like through the Frontend, but also does activates the
  Account To do SSO see the methods to create a hash and use those ones!
     			</p>
     			<p>

Modified: openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/CalendarWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/CalendarWebService.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/CalendarWebService.java (original)
+++ openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/CalendarWebService.java Tue Jun 10 15:46:38 2014
@@ -24,11 +24,11 @@ import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.Date;
 import java.util.List;
+import java.util.Set;
 
 import org.apache.axis2.AxisFault;
 import org.apache.openmeetings.data.calendar.management.AppointmentLogic;
 import org.apache.openmeetings.data.conference.RoomManager;
-import org.apache.openmeetings.data.user.UserManager;
 import org.apache.openmeetings.db.dao.calendar.AppointmentCategoryDao;
 import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
 import org.apache.openmeetings.db.dao.calendar.AppointmentReminderTypDao;
@@ -41,6 +41,7 @@ import org.apache.openmeetings.db.entity
 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.TimezoneUtil;
 import org.apache.openmeetings.util.AuthLevelUtil;
 import org.red5.logging.Red5LoggerFactory;
@@ -64,8 +65,6 @@ public class CalendarWebService {
 	@Autowired
 	private SessiondataDao sessiondataDao;
 	@Autowired
-	private UserManager userManager;
-	@Autowired
 	private UserDao userDao;
 	@Autowired
 	private RoomManager roomManager;
@@ -98,8 +97,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);
 			}
@@ -129,8 +127,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);
 			}
@@ -152,8 +149,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();
 			}
@@ -177,8 +173,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();
 			}
@@ -205,8 +200,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);
@@ -283,9 +277,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);
@@ -321,11 +313,11 @@ public class CalendarWebService {
 		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 AxisFault("The Appointment cannot be updated by the given user");
 				}
 				if (!a.getStart().equals(appointmentstart) || !a.getEnd().equals(appointmentend)) {
@@ -406,11 +398,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)) {
@@ -472,12 +464,12 @@ public class CalendarWebService {
 	public Long deleteAppointment(String SID, Long appointmentId, Long language_id) throws AxisFault {
 		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 AxisFault("The Appointment cannot be updated by the given user");
@@ -505,8 +497,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();
 
@@ -540,9 +531,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();
@@ -579,8 +569,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/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/FileWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/FileWebService.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/FileWebService.java (original)
+++ openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/FileWebService.java Tue Jun 10 15:46:38 2014
@@ -28,7 +28,6 @@ import java.util.LinkedHashMap;
 import org.apache.axis2.AxisFault;
 import org.apache.openmeetings.data.file.FileProcessor;
 import org.apache.openmeetings.data.file.FileUtils;
-import org.apache.openmeetings.data.user.UserManager;
 import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
 import org.apache.openmeetings.db.dao.server.SessiondataDao;
 import org.apache.openmeetings.db.dao.user.UserDao;
@@ -63,8 +62,6 @@ public class FileWebService {
 	@Autowired
 	private SessiondataDao sessiondataDao;
 	@Autowired
-	private UserManager userManager;
-	@Autowired
 	private UserDao userDao;
 	@Autowired
 	private FileExplorerItemDao fileExplorerItemDao;
@@ -118,9 +115,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();
@@ -203,9 +199,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();
@@ -275,9 +270,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);
 
@@ -341,9 +335,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);
 
@@ -399,8 +392,7 @@ public class FileWebService {
 			String fileName, Long room_id, Boolean isOwner) throws AxisFault {
 		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);
 
@@ -455,9 +447,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);
@@ -486,9 +477,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);
 
@@ -516,9 +506,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
 
@@ -564,9 +553,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);
@@ -610,10 +598,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);
 
@@ -681,9 +667,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);
 
@@ -758,10 +743,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);
@@ -808,9 +791,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);
@@ -853,10 +835,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);
 
@@ -889,9 +869,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
 				/*
@@ -945,10 +924,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);
 
@@ -1004,9 +981,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/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/JabberWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/JabberWebService.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/JabberWebService.java (original)
+++ openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/JabberWebService.java Tue Jun 10 15:46:38 2014
@@ -22,7 +22,6 @@ import java.util.ArrayList;
 import java.util.List;
 
 import org.apache.openmeetings.data.conference.InvitationManager;
-import org.apache.openmeetings.data.user.UserManager;
 import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.db.dao.room.RoomDao;
 import org.apache.openmeetings.db.dao.server.SessiondataDao;
@@ -54,8 +53,6 @@ public class JabberWebService {
 			JabberWebService.class, OpenmeetingsVariables.webAppRootKey);
 
 	@Autowired
-	private UserManager userManager;
-	@Autowired
 	private UserDao userDao;
 	@Autowired
 	private SessiondataDao sessiondataDao;
@@ -119,10 +116,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;
@@ -138,14 +134,12 @@ 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);
+							false, "", Valid.OneTime, userDao.get(users_id), 1L, null, null, null);
 	
 			return ((invitation == null) ? null : invitation.getHash());
 		} else {

Modified: openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/RoomWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/RoomWebService.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/RoomWebService.java (original)
+++ openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/RoomWebService.java Tue Jun 10 15:46:38 2014
@@ -124,12 +124,10 @@ public class RoomWebService {
 		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))) {
 
-				List<Room> roomList = roomManager.getPublicRooms(
-						User_level, roomtypes_id);
+				List<Room> roomList = roomDao.getPublicRooms(roomtypes_id);
 				// We need to re-marshal the Rooms object cause Axis2 cannot use
 				// our objects
 				if (roomList != null && roomList.size() != 0) {
@@ -171,9 +169,8 @@ public class RoomWebService {
 		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 flvRecordingDao.delete(flvRecordingId);
 			}
 
@@ -199,9 +196,8 @@ public class RoomWebService {
 			String externalUserId, String externalUserType) throws AxisFault {
 		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 flvRecordingDao.getFlvRecordingByExternalUserId(externalUserId, externalUserType);
 			}
 
@@ -230,9 +226,8 @@ public class RoomWebService {
 		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))) {
 				List<FlvRecording> recordingList = flvRecordingDao
 						.getFlvRecordingByExternalRoomTypeAndCreator(
 								externalRoomType, insertedBy);
@@ -277,11 +272,9 @@ public class RoomWebService {
 		try {
 
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManager.getUserLevelByID(users_id);
 
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
-				return flvRecordingDao
-						.getFlvRecordingByExternalRoomType(externalRoomType);
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
+				return flvRecordingDao.getFlvRecordingByExternalRoomType(externalRoomType);
 
 			}
 
@@ -307,11 +300,9 @@ public class RoomWebService {
 		try {
 
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManager.getUserLevelByID(users_id);
 
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
-				List<FlvRecording> recordingList = flvRecordingDao
-						.getFlvRecordingByExternalRoomType(externalRoomType);
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
+				List<FlvRecording> recordingList = flvRecordingDao.getFlvRecordingByExternalRoomType(externalRoomType);
 
 				// We need to re-marshal the Rooms object cause Axis2 cannot use
 				// our objects
@@ -355,9 +346,8 @@ public class RoomWebService {
 		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))) {
 
 				List<FlvRecording> recordingList = flvRecordingDao
 						.getFlvRecordingByRoomId(roomId);
@@ -417,9 +407,8 @@ public class RoomWebService {
 		List<RoomCountBean> roomBeans = new ArrayList<RoomCountBean>();
 		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))) {
 				List<Integer> roomIds = new ArrayList<Integer>();
 
 				if (roomId != null) {
@@ -476,11 +465,10 @@ public class RoomWebService {
 	public RoomReturn getRoomWithClientObjectsById(String SID, long rooms_id) throws AxisFault {
 		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))) {
 
-				Room room = roomManager.getRoomById(user_level, rooms_id);
+				Room room = roomDao.get(rooms_id);
 
 				RoomReturn roomReturn = new RoomReturn();
 
@@ -598,9 +586,8 @@ public class RoomWebService {
 			Integer filesPanelWidth) {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManager.getUserLevelByID(users_id);
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
-				return roomManager.addRoom(3L, name, roomtypes_id, comment,
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
+				return roomManager.addRoom(name, roomtypes_id, comment,
 						numberOfPartizipants, ispublic, null, false, false,
 						null, false, null, true, false, false, false //isClosed
 						, "", "",
@@ -662,9 +649,8 @@ public class RoomWebService {
 			Integer demoTime, Boolean isModeratedRoom) {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManager.getUserLevelByID(users_id);
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
-				return roomManager.addRoom(3L, name, roomtypes_id, comment,
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
+				return roomManager.addRoom(name, roomtypes_id, comment,
 						numberOfPartizipants, ispublic, null, appointment,
 						isDemoRoom, demoTime, isModeratedRoom, null, true,
 						false, true, false //isClosed
@@ -732,9 +718,8 @@ public class RoomWebService {
 			Boolean allowUserQuestions) {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManager.getUserLevelByID(users_id);
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
-				return roomManager.addRoom(3L, name, roomtypes_id, comment,
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
+				return roomManager.addRoom(name, roomtypes_id, comment,
 						numberOfPartizipants, ispublic, null, appointment,
 						isDemoRoom, demoTime, isModeratedRoom, null,
 						allowUserQuestions, false, true, false //isClosed
@@ -805,9 +790,8 @@ public class RoomWebService {
 			Boolean allowUserQuestions, Boolean isAudioOnly) throws AxisFault {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManager.getUserLevelByID(users_id);
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
-				return roomManager.addRoom(3L, name, roomtypes_id, comment,
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
+				return roomManager.addRoom(name, roomtypes_id, comment,
 						numberOfPartizipants, ispublic, null, appointment,
 						isDemoRoom, demoTime, isModeratedRoom, null,
 						allowUserQuestions, isAudioOnly, true, false //isClosed
@@ -898,9 +882,8 @@ public class RoomWebService {
 			Boolean hideWhiteboard) throws AxisFault {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManager.getUserLevelByID(users_id);
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
-				return roomManager.addRoom(3L, name, roomtypes_id, comment,
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
+				return roomManager.addRoom(name, roomtypes_id, comment,
 						numberOfPartizipants, ispublic, null, appointment,
 						isDemoRoom, demoTime, isModeratedRoom, null,
 						allowUserQuestions, isAudioOnly, true, false //isClosed
@@ -971,8 +954,7 @@ public class RoomWebService {
 			String externalRoomType) throws AxisFault {
 		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))) {
 				Room room = conferenceService.getRoomByExternalId(SID,
 						externalRoomId, externalRoomType, roomtypes_id);
 				Long roomId = null;
@@ -1038,8 +1020,7 @@ public class RoomWebService {
 			Integer filesPanelWidth, Boolean appointment) {
 		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 roomManager.updateRoomInternal(rooms_id,
 						roomtypes_id, name, ispublic, comment,
 						numberOfPartizipants, null, appointment, false, null,
@@ -1104,8 +1085,7 @@ public class RoomWebService {
 			Integer demoTime, Boolean isModeratedRoom) {
 		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 roomManager.updateRoomInternal(room_id, roomtypes_id,
 						name, ispublic, comment, numberOfPartizipants, null,
 						appointment, isDemoRoom, demoTime, isModeratedRoom,
@@ -1173,8 +1153,7 @@ public class RoomWebService {
 			Boolean allowUserQuestions) {
 		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 roomManager.updateRoomInternal(room_id, roomtypes_id,
 						name, ispublic, comment, numberOfPartizipants, null,
 						appointment, isDemoRoom, demoTime, isModeratedRoom,
@@ -1265,8 +1244,7 @@ public class RoomWebService {
 			Boolean hideWhiteboard) {
 		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 roomManager.updateRoomInternal(room_id, roomtypes_id,
 						name, ispublic, comment, numberOfPartizipants, null,
 						appointment, isDemoRoom, demoTime, isModeratedRoom,
@@ -1370,8 +1348,7 @@ public class RoomWebService {
 			Integer demoTime, Boolean isModeratedRoom, String externalRoomType) {
 		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 roomManager.addExternalRoom(name, roomtypes_id,
 						comment, numberOfPartizipants, ispublic, null,
 						appointment, isDemoRoom, demoTime, isModeratedRoom,
@@ -1431,8 +1408,7 @@ public class RoomWebService {
 			Boolean isAudioOnly) {
 		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 roomManager.addExternalRoom(name, roomtypes_id,
 						comment, numberOfPartizipants, ispublic, null,
 						appointment, isDemoRoom, demoTime, isModeratedRoom,
@@ -1497,8 +1473,7 @@ public class RoomWebService {
 			Boolean waitForRecording, Boolean allowRecording) {
 		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 roomManager.addExternalRoom(name, roomtypes_id,
 						comment, numberOfPartizipants, ispublic, null,
 						appointment, isDemoRoom, demoTime, isModeratedRoom,
@@ -1570,8 +1545,7 @@ public class RoomWebService {
 			Boolean allowRecording, Boolean hideTopBar) {
 		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 roomManager.addExternalRoom(name, roomtypes_id,
 						comment, numberOfPartizipants, ispublic, null,
 						appointment, isDemoRoom, demoTime, isModeratedRoom,
@@ -1628,9 +1602,8 @@ public class RoomWebService {
 			String validToTime) throws AxisFault {
 		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))) {
 
 				Date dFrom = null;
 				Date dTo = null;
@@ -1755,9 +1728,8 @@ public class RoomWebService {
 			Long language_id, Boolean sendMail) throws AxisFault {
 		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))) {
 
 				Date dFrom = null;
 				Date dTo = null;
@@ -1882,9 +1854,8 @@ public class RoomWebService {
 			Long language_id, Boolean sendMail) throws AxisFault {
 		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))) {
 
 				Calendar calFrom = Calendar.getInstance();
 				calFrom.setTime(fromDate);
@@ -1903,8 +1874,7 @@ public class RoomWebService {
 				User invitee = userDao.getContact(email, users_id);
 				Invitation invitation = invitationManager.getInvitation(invitee, roomDao.get(room_id),
 								isPasswordProtected, invitationpass, Valid.fromInt(valid)
-								, userDao.get(users_id), language_id,
-								dFrom, dTo, null);
+								, userDao.get(users_id), language_id, dFrom, dTo, null);
 
 				if (invitation != null) {
 					if (sendMail) {
@@ -2117,9 +2087,8 @@ public class RoomWebService {
 			String redirectURL) throws AxisFault {
 		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))) {
 				int validFromHour = Integer.valueOf(validFromTime.substring(0, 2)).intValue();
 				int validFromMinute = Integer.valueOf(validFromTime.substring(3, 5)).intValue();
 
@@ -2248,9 +2217,8 @@ public class RoomWebService {
 			throws AxisFault {
 		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))) {
 				Appointment a = appointmentLogic.getAppointmentByRoom(room_id);
 
 				if (email == null || a == null) {
@@ -2299,11 +2267,10 @@ public class RoomWebService {
 			throws AxisFault {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManager.getUserLevelByID(users_id);
 
 			log.debug("closeRoom 1 " + room_id);
 
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
 
 				log.debug("closeRoom 2 " + status);
 
@@ -2342,8 +2309,7 @@ public class RoomWebService {
 			throws AxisFault {
 		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(String.format("modifyRoomParameter[%s]: %s = %s", room_id, paramName, paramValue));
 				Room r = roomDao.get(room_id);
 				BeanWrapper rw = new BeanWrapperImpl(r);
@@ -2372,10 +2338,9 @@ public class RoomWebService {
 	public Long addRoomToOrg(String SID, Long rooms_id, Long organisation_id) {
 		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))) {
 				if (null == roomManager.getRoomsOrganisationByOrganisationIdAndRoomId(organisation_id, rooms_id)) {
-					return roomManager.addRoomToOrganisation(user_level, rooms_id, organisation_id);
+					return roomManager.addRoomToOrganisation(rooms_id, organisation_id);
 				}
 			}
 		} catch (Exception err) {

Modified: openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/ServerWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/ServerWebService.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/ServerWebService.java (original)
+++ openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/ServerWebService.java Tue Jun 10 15:46:38 2014
@@ -19,9 +19,9 @@
 package org.apache.openmeetings.axis.services;
 
 import org.apache.axis2.AxisFault;
-import org.apache.openmeetings.data.user.UserManager;
 import org.apache.openmeetings.db.dao.server.ServerDao;
 import org.apache.openmeetings.db.dao.server.SessiondataDao;
+import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.entity.server.Server;
 import org.apache.openmeetings.util.AuthLevelUtil;
 import org.apache.openmeetings.util.OpenmeetingsVariables;
@@ -44,7 +44,7 @@ public class ServerWebService {
 	@Autowired
 	private SessiondataDao sessiondataDao;
 	@Autowired
-	private UserManager userManager;
+	private UserDao userDao;
 	@Autowired
 	private ServerDao serversDao;
 
@@ -62,9 +62,8 @@ public class ServerWebService {
 	public Server[] getServers(String SID, int start, int max) throws AxisFault {
 		log.debug("getServers enter");
 		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 serversDao.get(start, max).toArray(new Server[0]);
 		} else {
 			log.warn("Insuffisient permissions");
@@ -83,9 +82,8 @@ public class ServerWebService {
 	public int getServerCount(String SID) throws AxisFault {
 		log.debug("getServerCount enter");
 		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 (int) serversDao.count();
 		} else {
 			log.warn("Insuffisient permissions");
@@ -125,9 +123,8 @@ public class ServerWebService {
 			Boolean active, String comment) throws AxisFault {
 		log.debug("saveServerCount enter");
 		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))) {
 			Server s = serversDao.get(id);
 			if (s == null) {
 				s = new Server();
@@ -160,9 +157,8 @@ public class ServerWebService {
 	public boolean deleteServer(String SID, long id) throws AxisFault {
 		log.debug("saveServerCount enter");
 		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))) {
 			Server s = serversDao.get(id);
 			if (s != null) {
 				serversDao.delete(s, users_id);

Modified: openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/UserWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/UserWebService.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/UserWebService.java (original)
+++ openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/UserWebService.java Tue Jun 10 15:46:38 2014
@@ -42,8 +42,10 @@ import org.apache.openmeetings.db.entity
 import org.apache.openmeetings.db.entity.user.Organisation;
 import org.apache.openmeetings.db.entity.user.Organisation_Users;
 import org.apache.openmeetings.db.entity.user.User;
+import org.apache.openmeetings.db.entity.user.User.Right;
 import org.apache.openmeetings.remote.MainService;
 import org.apache.openmeetings.util.AuthLevelUtil;
+import org.apache.openmeetings.util.OmException;
 import org.apache.openmeetings.util.OpenmeetingsVariables;
 import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
@@ -108,24 +110,32 @@ public class UserWebService {
 	 *            
 	 * @return - id of the logged in user, -1 in case of the error
 	 */
-	public Long loginUser(String SID, String username, String userpass)
-			throws AxisFault {
+	public Long loginUser(String SID, String username, String userpass) throws AxisFault {
 		try {
-			Object obj = userManagement.loginUser(SID, username, userpass,
-					null, null, false);
-			if (obj == null) {
-				return new Long(-1);
+			log.debug("Login user SID : " + SID);
+			User u = userDao.login(username, userpass);
+			if (u == null) {
+				return -1L;
 			}
-			String objName = obj.getClass().getName();
-			if (objName.equals("java.lang.Long")) {
-				return (Long) obj;
-			} else {
-				return new Long(1);
+			
+			Boolean bool = sessiondataDao.updateUser(SID, u.getUser_id(), false, u.getLanguage_id());
+			if (bool == null) {
+				// Exception
+				return -1L;
+			} else if (!bool) {
+				// invalid Session-Object
+				return -35L;
+			}
+			
+			return u.getUser_id();
+		} catch (OmException oe) {
+			if (oe.getCode() != null) {
+				return oe.getCode();
 			}
 		} catch (Exception err) {
 			log.error("[loginUser]", err);
 		}
-		return new Long(-1);
+		return -1L;
 	}
 
 	/**
@@ -167,7 +177,7 @@ public class UserWebService {
 	}
 
 	/**
-	 * Adds a new Usre like through the Frontend, but also does activates the
+	 * Adds a new User like through the Frontend, but also does activates the
 	 * Account To do SSO see the methods to create a hash and use those ones!
 	 * 
 	 * @param SID
@@ -207,9 +217,8 @@ public class UserWebService {
 			throws AxisFault {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManagement.getUserLevelByID(users_id);
 
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
 
 				String jName_timeZone = configurationDao.getConfValue("default.timezone", String.class, "");
 
@@ -226,7 +235,9 @@ public class UserWebService {
 				User user = userDao.get(user_id);
 
 				// activate the User
-				user.setStatus(1);
+				user.getRights().add(Right.Dashboard);
+				user.getRights().add(Right.Login);
+				user.getRights().add(Right.Room);
 				user.setUpdatetime(new Date());
 
 				userDao.update(user, users_id);
@@ -284,9 +295,8 @@ public class UserWebService {
 			long states_id, String town, long language_id, String jNameTimeZone) throws AxisFault {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManagement.getUserLevelByID(users_id);
 
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
 
 				Long user_id = userManagement.registerUser(username, userpass,
 						lastname, firstname, email, new Date(), street,
@@ -308,7 +318,7 @@ public class UserWebService {
 				User user = userDao.get(user_id);
 
 				// activate the User
-				user.setStatus(1);
+				user.getRights().add(Right.Login);
 				user.setUpdatetime(new Date());
 
 				userDao.update(user, users_id);
@@ -376,9 +386,8 @@ public class UserWebService {
 			throws AxisFault {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManagement.getUserLevelByID(users_id);
 
-			if (AuthLevelUtil.checkAdminLevel(user_level)) {
+			if (AuthLevelUtil.hasAdminLevel(userDao.getRights(users_id))) {
 
 				User testUser = userDao.getExternalUser(externalUserId, externalUserType);
 
@@ -400,7 +409,7 @@ public class UserWebService {
 				User user = userDao.get(user_id);
 
 				// activate the User
-				user.setStatus(1);
+				user.getRights().add(Right.Login);
 				user.setUpdatetime(new Date());
 				user.setExternalUserId(externalUserId);
 				user.setExternalUserType(externalUserType);
@@ -434,9 +443,8 @@ public class UserWebService {
 	public Long deleteUserById(String SID, Long userId) throws AxisFault {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManagement.getUserLevelByID(users_id);
 
-			if (AuthLevelUtil.checkAdminLevel(user_level)) {
+			if (AuthLevelUtil.hasAdminLevel(userDao.getRights(users_id))) {
 
 				// Setting user deleted
 				userDao.deleteUserID(userId);
@@ -471,9 +479,8 @@ public class UserWebService {
 			String externalUserId, String externalUserType) throws AxisFault {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManagement.getUserLevelByID(users_id);
 
-			if (AuthLevelUtil.checkAdminLevel(user_level)) {
+			if (AuthLevelUtil.hasAdminLevel(userDao.getRights(users_id))) {
 
 				User userExternal = userDao.getExternalUser(externalUserId, externalUserType);
 
@@ -533,8 +540,7 @@ public class UserWebService {
 			throws AxisFault {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManagement.getUserLevelByID(users_id);
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
 
 				RemoteSessionObject remoteSessionObject = new RemoteSessionObject(
 						username, firstname, lastname, profilePictureUrl,
@@ -625,8 +631,7 @@ public class UserWebService {
 		log.debug("UserService.setUserObjectAndGenerateRoomHashByURL");
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManagement.getUserLevelByID(users_id);
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
 
 				RemoteSessionObject remoteSessionObject = new RemoteSessionObject(
 						username, firstname, lastname, profilePictureUrl,
@@ -719,8 +724,7 @@ public class UserWebService {
 			int showAudioVideoTestAsInt, int allowRecording) {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManagement.getUserLevelByID(users_id);
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
 
 				RemoteSessionObject remoteSessionObject = new RemoteSessionObject(
 						username, firstname, lastname, profilePictureUrl,
@@ -806,8 +810,7 @@ public class UserWebService {
 
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManagement.getUserLevelByID(users_id);
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
 
 				RemoteSessionObject remoteSessionObject = new RemoteSessionObject(
 						username, firstname, lastname, profilePictureUrl,
@@ -834,16 +837,12 @@ public class UserWebService {
 				}
 
 			} else {
-
-				log.debug("Invalid access via SOAP " + SID + " UserD"
-						+ users_id + " " + user_level);
-
-				return "" + new Long(-26);
+				return "" + -26L;
 			}
 		} catch (Exception err) {
 			log.error("setUserObjectWithAndGenerateRoomHash", err);
 		}
-		return "" + new Long(-1);
+		return "" + -1L;
 	}
 
 	/**
@@ -897,8 +896,7 @@ public class UserWebService {
 			int showAudioVideoTestAsInt, int showNickNameDialogAsInt) {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManagement.getUserLevelByID(users_id);
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
 
 				RemoteSessionObject remoteSessionObject = new RemoteSessionObject(
 						username, firstname, lastname, profilePictureUrl,
@@ -973,8 +971,7 @@ public class UserWebService {
 			String externalUserId, String externalUserType, Long recording_id) {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManagement.getUserLevelByID(users_id);
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
 
 				RemoteSessionObject remoteSessionObject = new RemoteSessionObject(
 						username, firstname, "", "", "", externalUserId,
@@ -1027,8 +1024,7 @@ public class UserWebService {
 			Long organisation_id, Long insertedby) {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManagement.getUserLevelByID(users_id);
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
 				if (!orgUserDao.isUserInOrganization(organisation_id, user_id)) {
 					User u = userDao.get(user_id);
 					u.getOrganisation_users().add(new Organisation_Users(orgDao.get(organisation_id)));
@@ -1066,10 +1062,9 @@ public class UserWebService {
 			boolean asc) {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			Long user_level = userManagement.getUserLevelByID(users_id);
 			SearchResult<User> result = new SearchResult<User>();
 			result.setObjectName(User.class.getName());
-			if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
 				result.setRecords(orgUserDao.count(organisation_id));
 				result.setResult(new ArrayList<User>());
 				for (Organisation_Users ou : orgUserDao.get(organisation_id, null, start, max, orderby + " " + (asc ? "ASC" : "DESC"))) {
@@ -1124,8 +1119,7 @@ public class UserWebService {
 	 */
 	public Long addOrganisation(String SID, String name) throws AxisFault {
 		Long users_id = sessiondataDao.checkSession(SID);
-		Long user_level = userManagement.getUserLevelByID(users_id);
-		if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
+		if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
 			Organisation o = new Organisation();
 			o.setName(name);
 			return orgDao.update(o, users_id).getOrganisation_id();

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/basic/NavigationDao.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/basic/NavigationDao.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/basic/NavigationDao.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/basic/NavigationDao.java Tue Jun 10 15:46:38 2014
@@ -58,8 +58,8 @@ public class NavigationDao {
 
 	}
 
-	public List<Naviglobal> getMainMenu(long user_level, long USER_ID, long language_id) {
-		List<Naviglobal> ll = getMainMenu(user_level, USER_ID);
+	public List<Naviglobal> getMainMenu(boolean admin, long USER_ID, long language_id) {
+		List<Naviglobal> ll = getMainMenu(admin, USER_ID);
 		for (Naviglobal navigl : ll) {
 			navigl.setLabel(labelDao.get(navigl.getFieldvalues_id(), language_id));
 			navigl.setTooltip(labelDao.get(navigl.getTooltip_fieldvalues_id(), language_id));
@@ -71,10 +71,10 @@ public class NavigationDao {
 		return ll;
 	}
 
-	public List<Naviglobal> getMainMenu(long user_level, long USER_ID) {
+	public List<Naviglobal> getMainMenu(boolean admin, long USER_ID) {
 		try {
 			TypedQuery<Naviglobal> query = em.createNamedQuery("getNavigation", Naviglobal.class);
-			query.setParameter("level_id", user_level);
+			query.setParameter("level_id", admin ? 3L : 1L);
 			List<Naviglobal> navi = query.getResultList();
 			return navi;
 		} catch (Exception ex2) {

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/room/RoomDao.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/room/RoomDao.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/room/RoomDao.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/room/RoomDao.java Tue Jun 10 15:46:38 2014
@@ -104,6 +104,10 @@ public class RoomDao implements IDataPro
 		return em.createNamedQuery("getPublicRoomsOrdered", Room.class).getResultList();
 	}
 	
+	public List<Room> getPublicRooms(Long typeId) {
+		return em.createNamedQuery("getPublicRooms", Room.class).setParameter("typeId", typeId).getResultList();
+	}
+	
 	public List<Long> getSipRooms(List<Long> ids) {
 		TypedQuery<Long> q = em.createNamedQuery("getSipRoomIdsByIds", Long.class);
 		q.setParameter("ids", ids);

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/ILdapLoginManagement.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/ILdapLoginManagement.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/ILdapLoginManagement.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/ILdapLoginManagement.java Tue Jun 10 15:46:38 2014
@@ -18,11 +18,10 @@
  */
 package org.apache.openmeetings.db.dao.user;
 
-import org.apache.openmeetings.db.entity.room.Client;
-import org.red5.server.api.IClient;
+import org.apache.openmeetings.db.entity.user.User;
+import org.apache.openmeetings.util.OmException;
 
 //FIXME HACK to bypass cross project compilation
 public interface ILdapLoginManagement {
-	Object doLdapLogin(String user, String passwd,
-			Client currentClient, IClient client, String SID, String domain);
+	User login(String user, String passwd, Long domainId) throws OmException;
 }

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/IUserManager.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/IUserManager.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/IUserManager.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/IUserManager.java Tue Jun 10 15:46:38 2014
@@ -20,20 +20,18 @@ package org.apache.openmeetings.db.dao.u
 
 import java.util.Date;
 import java.util.List;
+import java.util.Set;
 import java.util.TimeZone;
 
-import org.apache.openmeetings.db.entity.room.Client;
-import org.red5.server.api.IClient;
+import org.apache.openmeetings.db.entity.user.User.Right;
 
 //FIXME HACK to bypass cross project compilation
 public interface IUserManager {
-	Long registerUserInit(long user_level, long level_id, int availible,
-			int status, String login, String password, String lastname,
+	Long registerUserInit(Set<Right> rights, String login, String password, String lastname,
 			String firstname, String email, Date age, String street,
 			String additionalname, String fax, String zip, long states_id,
 			String town, long language_id, boolean sendWelcomeMessage,
-			List<Long> organisations, String phone, boolean sendSMS,
-			Boolean sendConfirmation,
+			List<Long> organisations, String phone, boolean sendSMS, Boolean sendConfirmation,
 			TimeZone timezone, Boolean forceTimeZoneCheck,
 			String userOffers, String userSearchs, Boolean showContactData,
 			Boolean showContactDataToContacts, String activatedHash) throws Exception;
@@ -43,7 +41,4 @@ public interface IUserManager {
 			String street, String additionalname, String fax, String zip,
 			long states_id, String town, long language_id, String phone, boolean sendSMS, 
 			boolean generateSipUserData, String jNameTimeZone);
-	
-	Object loginUser(String SID, String userOrEmail, String userpass,
-			Client currentClient, IClient client, Boolean storePermanent);
 }

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/UserDao.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/UserDao.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/UserDao.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/UserDao.java Tue Jun 10 15:46:38 2014
@@ -47,10 +47,12 @@ import org.apache.openmeetings.db.dao.ba
 import org.apache.openmeetings.db.entity.user.Address;
 import org.apache.openmeetings.db.entity.user.Organisation_Users;
 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.AuthLevelUtil;
 import org.apache.openmeetings.util.DaoHelper;
+import org.apache.openmeetings.util.OmException;
 import org.apache.openmeetings.util.crypt.ManageCryptStyle;
 import org.apache.wicket.util.string.Strings;
 import org.red5.logging.Red5LoggerFactory;
@@ -76,33 +78,36 @@ public class UserDao implements IDataPro
 	@Autowired
 	private ConfigurationDao cfgDao;
 	@Autowired
-	private StateDao stateDaoImpl;
+	private StateDao stateDao;
 	@Autowired
 	private TimezoneUtil timezoneUtil;
 
+	public static Set<Right> getDefaultRights() {
+		Set<Right> rights = new HashSet<User.Right>();
+		rights.add(Right.Login);
+		rights.add(Right.Dashboard);
+		rights.add(Right.Room);
+		return rights;
+	}
 	/**
 	 * Get a new instance of the {@link User} entity, with all default values
 	 * set
 	 * 
-	 * @param currentUser
-	 *            the timezone of the current user is copied to the new default
-	 *            one (if the current user has one)
-	 * @return
+	 * @param currentUser - the user to copy time zone from
+	 * @return new User instance
 	 */
 	public User getNewUserInstance(User currentUser) {
 		User user = new User();
-		user.setSalutations_id(1L); // TODO: Fix default selection to be
-									// configurable
-		user.setLevel_id(1L);
+		user.setSalutations_id(1L); // TODO: Fix default selection to be configurable
+		user.setRights(getDefaultRights());
 		user.setLanguage_id(cfgDao.getConfValue(CONFIG_DEFAUT_LANG_KEY, Long.class, "1"));
 		user.setTimeZoneId(timezoneUtil.getTimeZone(currentUser).getID());
 		user.setForceTimeZoneCheck(false);
 		user.setSendSMS(false);
 		user.setAge(new Date());
 		Address adresses = new Address();
-		adresses.setStates(stateDaoImpl.getStateById(1L));
+		adresses.setStates(stateDao.getStateById(1L));
 		user.setAdresses(adresses);
-		user.setStatus(1);
 		user.setShowContactData(false);
 		user.setShowContactDataToContacts(false);
 
@@ -348,7 +353,7 @@ public class UserDao implements IDataPro
 		return count == 0;
 	}
 	
-	public User getUserByName(String login, Type type) {
+	public User getByName(String login, Type type) {
 		User us = null;
 		try {
 			us = em.createNamedQuery("getUserByLogin", User.class)
@@ -538,4 +543,113 @@ public class UserDao implements IDataPro
 	public List<User> get(String search, int start, int count, String order) {
 		return get(search, start, count, order, false, -1);
 	}
+	
+	public Set<Right> getRights(Long id) {
+		Set<Right> rights = new HashSet<Right>();
+
+		if (id == null) {
+			return rights;
+		}
+		// For direct access of linked users
+		if (id < 0) {
+			rights.add(Right.Room);
+			return rights;
+		}
+
+		User u = get(id);
+		if (u != null) {
+			return u.getRights();
+		}
+		return rights;
+	}
+	
+	/**
+	 * login logic
+	 * 
+	 * @param SID
+	 * @param Username
+	 * @param Userpass
+	 * @return
+	 */
+	public User login(String userOrEmail, String userpass) throws OmException {
+		List<User> users = em.createNamedQuery("getUserByLoginOrEmail", User.class)
+				.setParameter("userOrEmail", userOrEmail)
+				.setParameter("type", Type.user)
+				.getResultList();
+
+		log.debug("debug SIZE: " + users.size());
+
+		if (users.size() == 0) {
+			throw new OmException(-10L);
+		}
+		User u = users.get(0);
+
+		if (!verifyPassword(u.getUser_id(), userpass)) {
+			throw new OmException(-11L);
+		}
+		// Check if activated
+		if (!AuthLevelUtil.hasLoginLevel(u.getRights())) {
+			throw new OmException(-41L);
+		}
+		log.debug("loginUser " + u.getOrganisation_users());
+		if (u.getOrganisation_users().isEmpty()) {
+			throw new OmException("No Organization assigned to user");
+		}
+		
+		u.setLastlogin(new Date());
+		return update(u, u.getUser_id());
+	}
+	
+	public Address getAddress(String street, String zip, String town, long states_id, String additionalname, String fax, String phone, String email) {
+		Address a =  new Address();
+		a.setStreet(street);
+		a.setZip(zip);
+		a.setTown(town);
+		a.setStates(stateDao.getStateById(states_id));
+		a.setAdditionalname(additionalname);
+		a.setComment("");
+		a.setFax(fax);
+		a.setPhone(phone);
+		a.setEmail(email);
+		return a;
+	}
+	
+	public User addUser(Set<Right> rights, String firstname, String login, String lastname, long language_id,
+			String userpass, Address adress, boolean sendSMS, Date age, String hash, TimeZone timezone,
+			Boolean forceTimeZoneCheck, String userOffers, String userSearchs, Boolean showContactData,
+			Boolean showContactDataToContacts, String externalId, String externalType, List<Organisation_Users> orgList, String pictureuri) throws NoSuchAlgorithmException {
+		
+		User u = new User();
+		u.setFirstname(firstname);
+		u.setLogin(login);
+		u.setLastname(lastname);
+		u.setAge(age);
+		u.setAdresses(adress);
+		u.setSendSMS(sendSMS);
+		u.setRights(rights);
+		u.setLastlogin(new Date());
+		u.setLasttrans(new Long(0));
+		u.setSalutations_id(1L);
+		u.setStarttime(new Date());
+		u.setActivatehash(hash);
+		u.setTimeZoneId(timezone.getID());
+		u.setForceTimeZoneCheck(forceTimeZoneCheck);
+		u.setExternalUserId(externalId);
+		u.setExternalUserType(externalType);
+
+		u.setUserOffers(userOffers);
+		u.setUserSearchs(userSearchs);
+		u.setShowContactData(showContactData);
+		u.setShowContactDataToContacts(showContactDataToContacts);
+
+		// this is needed cause the language is not a needed data at registering
+		u.setLanguage_id(language_id != 0 ? language_id : null);
+		u.updatePassword(cfgDao, userpass);
+		u.setRegdate(new Date());
+		u.setDeleted(false);
+		u.setPictureuri(pictureuri);
+		u.setOrganisation_users(orgList);
+		
+		return update(u, null);
+	}
 }

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dto/user/UserDTO.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dto/user/UserDTO.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dto/user/UserDTO.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dto/user/UserDTO.java Tue Jun 10 15:46:38 2014
@@ -18,15 +18,18 @@
  */
 package org.apache.openmeetings.db.dto.user;
 
+import java.util.Set;
+
 import org.apache.openmeetings.db.entity.user.Address;
 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;
 
 public class UserDTO {
 	private Long id;
 	private String firstname;
 	private String lastname;
-	private Long level_id;
+	private Set<Right> rights;
 	private String login;
 	private Long language_id;
 	private Address adresses;
@@ -37,7 +40,7 @@ public class UserDTO {
 		id = u.getUser_id();
 		firstname = u.getFirstname();
 		lastname = u.getLastname();
-		level_id = u.getLevel_id();
+		rights = u.getRights();
 		login = u.getLogin();
 		language_id = u.getLanguage_id();
 		adresses = u.getAdresses();
@@ -69,12 +72,12 @@ public class UserDTO {
 		this.lastname = lastname;
 	}
 
-	public Long getLevel_id() {
-		return level_id;
+	public Set<Right> getRights() {
+		return rights;
 	}
 
-	public void setLevel_id(Long level_id) {
-		this.level_id = level_id;
+	public void setRights(Set<Right> rights) {
+		this.rights = rights;
 	}
 
 	public String getLogin() {

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/room/Room.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/room/Room.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/room/Room.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/room/Room.java Tue Jun 10 15:46:38 2014
@@ -55,15 +55,7 @@ import org.simpleframework.xml.Root;
 })
 @NamedQueries({
 	@NamedQuery(name = "getNondeletedRooms", query = "SELECT r FROM Room r WHERE r.deleted = false"),
-	@NamedQuery(name = "getPublicRooms", query = "SELECT r from Room r "
-			+ "JOIN r.roomtype as rt "
-			+ "WHERE r.ispublic=:ispublic and r.deleted=:deleted and rt.roomtypes_id=:roomtypes_id"),
-	@NamedQuery(name = "getPublicRoomsWithoutType", query = "SELECT r from Room r " + "WHERE "
-						+ "r.ispublic = :ispublic and r.deleted <> :deleted "
-						+ "ORDER BY r.name ASC"),
-	@NamedQuery(name = "getAppointedMeetings", query = "SELECT r from Room r "
-			+ "JOIN r.roomtype as rt " + "WHERE "
-			+ "r.deleted=:deleted and r.appointment=:appointed"),	
+	@NamedQuery(name = "getPublicRooms", query = "SELECT r from Room r WHERE r.ispublic = true and r.deleted = false and r.roomtype.roomtypes_id = :typeId"),
 	@NamedQuery(name = "getRoomByOwnerAndTypeId", query = "select c from Room as c "
 					+ "where c.ownerId = :ownerId "
 					+ "AND c.roomtype.roomtypes_id = :roomtypesId "

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/server/LdapConfig.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/server/LdapConfig.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/server/LdapConfig.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/server/LdapConfig.java Tue Jun 10 15:46:38 2014
@@ -48,47 +48,47 @@ import org.simpleframework.xml.Root;
 @Table(name = "ldapconfig")
 @Root(name="ldapconfig")
 public class LdapConfig implements Serializable, IDataProviderEntity {
-	private static final long serialVersionUID = 2839158519803993035L;
+	private static final long serialVersionUID = 1L;
 	@Id
 	@GeneratedValue(strategy = GenerationType.IDENTITY)
 	@Column(name="id")
-	public long ldapConfigId = 0L;
+	private long ldapConfigId = 0L;
 	
 	@Column(name="name")
 	@Element(data=true)
-	public String name;
+	private String name;
 	
 	@Column(name="config_file_name")
 	@Element(data=true, required = false)
-	public String configFileName;
+	private String configFileName;
 	
 	@Column(name="add_domain_to_user_name")
 	@Element(data=true)
-	public boolean addDomainToUserName;
+	private boolean addDomainToUserName;
 	
 	@Column(name="domain")
 	@Element(data=true, required = false)
-	public String domain;
+	private String domain;
 	
 	@Column(name="is_active")
 	@Element(data=true)
-	public boolean isActive;
+	private boolean isActive;
 	
 	@Column(name="inserted")
-	public Date inserted;
+	private Date inserted;
 	
 	@Column(name="updated")
-	public Date updated;
+	private Date updated;
 	
 	@ManyToOne(fetch = FetchType.EAGER)
 	@JoinColumn(name="insertedby_id", updatable=true, insertable=true)
 	@ForeignKey(enabled = true)
-	public User insertedby;
+	private User insertedby;
 	
 	@ManyToOne(fetch = FetchType.EAGER)
 	@JoinColumn(name="updatedby_id", updatable=true, insertable=true)
 	@ForeignKey(enabled = true)
-	public User updatedby;
+	private User updatedby;
 	
 	@Column(name="deleted")
 	private boolean deleted;

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Address.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Address.java?rev=1601669&r1=1601668&r2=1601669&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Address.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Address.java Tue Jun 10 15:46:38 2014
@@ -200,7 +200,7 @@ public class Address implements Serializ
 
 	@Override
 	public String toString() {
-		return "Address [adresses_id=" + adresses_id + ", states=" + states
+		return "Address [id=" + adresses_id + ", states=" + states
 				+ ", street=" + street + ", town=" + town + ", zip=" + zip
 				+ ", deleted=" + deleted + ", email=" + email + ", phone="
 				+ phone + "]";