Revision: 2823
Author: seba.wagner
Date: Thu Jan 21 07:54:24 2010
Log: Update Issue 1094
Save, Update and Form for Sip-User Data
http://code.google.com/p/openmeetings/source/detail?r=2823
Added:
/trunk/singlewebapp/src/app/org/openmeetings/app/data/user/dao/UserSipDataDaoImpl.java
Modified:
/trunk/singlewebapp/WebContent/openmeetings/modules/admin/useradmin/userAdminValueForm.lzx
/trunk/singlewebapp/src/app/logback.xml
/trunk/singlewebapp/src/app/org/openmeetings/app/data/user/Usermanagement.java
/trunk/singlewebapp/src/app/org/openmeetings/app/installation/ImportInitvalues.java
/trunk/singlewebapp/src/app/org/openmeetings/app/ldap/LdapLoginManagement.java
/trunk/singlewebapp/src/app/org/openmeetings/app/remote/UserService.java
/trunk/singlewebapp/src/test/org/openmeetings/test/basic/StartUpData.java
/trunk/singlewebapp/src/test/org/openmeetings/test/init/Addadminuser.java
=======================================
--- /dev/null
+++
/trunk/singlewebapp/src/app/org/openmeetings/app/data/user/dao/UserSipDataDaoImpl.java
Thu Jan 21 07:54:24 2010
@@ -0,0 +1,104 @@
+package org.openmeetings.app.data.user.dao;
+
+import java.util.Date;
+
+import org.hibernate.HibernateException;
+import org.hibernate.Query;
+import org.hibernate.Session;
+import org.hibernate.Transaction;
+import org.openmeetings.app.hibernate.beans.user.UserSipData;
+import org.openmeetings.app.hibernate.utils.HibernateUtil;
+import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.Logger;
+
+public class UserSipDataDaoImpl {
+
+ private static final Logger log =
Red5LoggerFactory.getLogger(UserSipDataDaoImpl.class, "openmeetings");
+
+ private static UserSipDataDaoImpl instance = null;
+
+
+ private UserSipDataDaoImpl() {
+ }
+
+ public static synchronized UserSipDataDaoImpl getInstance() {
+ if (instance == null) {
+ instance = new UserSipDataDaoImpl();
+ }
+ return instance;
+ }
+
+ public UserSipData getUserSipDataById(Long userSipDataId) {
+ try {
+
+ String hql = "select c from UserSipData as c where c.userSipDataId
= :userSipDataId";
+
+ Object idf = HibernateUtil.createSession();
+ Session session = HibernateUtil.getSession();
+ Transaction tx = session.beginTransaction();
+ Query query = session.createQuery(hql);
+ query.setLong("userSipDataId", userSipDataId);
+ UserSipData userSipData = (UserSipData)
query.uniqueResult();
+ tx.commit();
+ HibernateUtil.closeSession(idf);
+
+ return userSipData;
+ } catch (HibernateException ex) {
+ log.error("getUser",ex);
+ } catch (Exception ex2) {
+ log.error("getUser",ex2);
+ }
+ return null;
+ }
+
+ public Long addUserSipData(UserSipData userSipData) {
+ try {
+
+ if (userSipData == null) {
+ return null;
+ }
+
+ userSipData.setInserted(new Date());
+
+ Object idf = HibernateUtil.createSession();
+ Session session = HibernateUtil.getSession();
+ Transaction tx = session.beginTransaction();
+ Long userSipDataId = (Long) session.save(userSipData);
+ tx.commit();
+ HibernateUtil.closeSession(idf);
+
+ return userSipDataId;
+ } catch (HibernateException ex) {
+ log.error("[addUserSipData] ",ex);
+ } catch (Exception ex2) {
+ log.error("[addUserSipData] ",ex2);
+ }
+ return null;
+ }
+
+ public Long updateUserSipData(UserSipData userSipData) {
+ try {
+
+ if (userSipData == null) {
+ return null;
+ }
+
+ userSipData.setUpdated(new Date());
+
+ Object idf = HibernateUtil.createSession();
+ Session session = HibernateUtil.getSession();
+ Transaction tx = session.beginTransaction();
+ session.update(userSipData);
+ tx.commit();
+ HibernateUtil.closeSession(idf);
+
+ return userSipData.getUserSipDataId();
+ } catch (HibernateException ex) {
+ log.error("[updateUserSipData] ",ex);
+ } catch (Exception ex2) {
+ log.error("[updateUserSipData] ",ex2);
+ }
+ return null;
+ }
+
+}
=======================================
---
/trunk/singlewebapp/WebContent/openmeetings/modules/admin/useradmin/userAdminValueForm.lzx
Fri Nov 13 03:16:33 2009
+++
/trunk/singlewebapp/WebContent/openmeetings/modules/admin/useradmin/userAdminValueForm.lzx
Thu Jan 21 07:54:24 2010
@@ -36,6 +36,9 @@
this.adress_comment.setAttribute('text','');
this.status.selectItem(String('1'));
this._organisationslist.clearList();
+ this.sip_user.setAttribute('text','');
+ this.sip_pass.setAttribute('text','');
+ this.sip_auth.setAttribute('text','');
</handler>
<handler name="ondelete" >
@@ -80,6 +83,16 @@
for (var i=0;i<obj.organisation_users.length;i++){
this._organisationslist.addItem(obj.organisation_users[i].organisation.name,obj.organisation_users[i].organisation.organisation_id);
}
+
+ if (obj.userSipData != null) {
+
this.sip_user.setAttribute('text',obj.userSipData.username);
+
this.sip_pass.setAttribute('text',obj.userSipData.userpass);
+
this.sip_auth.setAttribute('text',obj.userSipData.authId);
+ } else {
+ this.sip_user.setAttribute('text','');
+ this.sip_pass.setAttribute('text','');
+ this.sip_auth.setAttribute('text','');
+ }
]]>
</method>
@@ -140,6 +153,9 @@
this.sendObject["title_id"] =
Number(this.parent.salutation.getValue());
this.sendObject["organisations"] =
this.parent._organisationslist.getAllItems();
+ this.sendObject["sip_user"] =
this.parent.sip_user.getText();
+ this.sendObject["sip_pass"] =
this.parent.sip_pass.getText();
+ this.sendObject["sip_auth"] =
this.parent.sip_auth.getText();
if ($debug) Debug.write("prepareCall:
",this.sendObject);
</method>
@@ -259,6 +275,7 @@
//if (this.user_id!=0)
new
lz.chooseOrganisationWindow(canvas.main_content._content.inner,{refObj:this,item_id:this.user_id});
</method>
+
<baseChooseIcon resourceN="button_cancel_rsc" labelid="176" y="542"
x="430"
onclick="new
lz.confirmDeleteWindow(canvas.main_content._content.inner,{refObj:this});" >
<method name="confirmDelete">
@@ -266,8 +283,30 @@
for (var i in this.parent._organisationslist._selected)
this.parent._organisationslist.removeItem(this.parent._organisationslist._selected[i].value);
</method>
</baseChooseIcon>
-
-
+
+ <!--Moderated -->
+ <labelText labelid="883" width="200" y="650" resize="false"
+ x="0" fontstyle="bold" />
+
+ <view resource="messagebox_info_rsc" x="0" y="670" />
+
+ <labelText labelid="884" x="24" y="670" fontstyle="italic"
+ multiline="true" width="364" />
+
+ <labelText labelid="885" width="200" y="730" resize="false" x="2"/>
+ <customEdittext name="sip_user" y="730" x="120" width="270"
+ text="" />
+
+ <labelText labelid="886" width="200" y="760" resize="false" x="2"/>
+ <customEdittext name="sip_pass" y="760" x="120" width="270"
+ text="" />
+
+ <labelText labelid="887" width="200" y="790" resize="false" x="2"/>
+ <customEdittext name="sip_auth" y="790" x="120" width="270"
+ text="" />
+
+ <view y="850" />
+
</class>
</library>
=======================================
--- /trunk/singlewebapp/src/app/logback.xml Thu Jan 21 05:58:03 2010
+++ /trunk/singlewebapp/src/app/logback.xml Thu Jan 21 07:54:24 2010
@@ -48,7 +48,7 @@
</layout>
</appender>
<root>
- <level value="ERROR" />
+ <level value="DEBUG" />
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
<appender-ref ref="ERRORFILE" />
@@ -150,10 +150,6 @@
<logger name="org.red5.server.webapp.oflaDemo">
<level value="WARN" />
</logger>
-
- <logger name="org.openmeetings">
- <level value="DEBUG" />
- </logger>
<!-- Mina -->
<logger name="org.apache.mina">
@@ -278,6 +274,9 @@
<logger name="org.openmeetings">
<level value="DEBUG"/>
</logger>
+ <logger name="org.openlaszlo">
+ <level value="DEBUG"/>
+ </logger>
<logger name="org.apache.axis2">
<level value="ERROR"/>
</logger>
=======================================
---
/trunk/singlewebapp/src/app/org/openmeetings/app/data/user/Usermanagement.java
Fri Nov 20 07:07:23 2009
+++
/trunk/singlewebapp/src/app/org/openmeetings/app/data/user/Usermanagement.java
Thu Jan 21 07:54:24 2010
@@ -19,12 +19,14 @@
import org.openmeetings.app.data.basic.Fieldmanagment;
import org.openmeetings.app.data.basic.Sessionmanagement;
import org.openmeetings.app.data.beans.basic.SearchResult;
+import org.openmeetings.app.data.user.dao.UserSipDataDaoImpl;
import org.openmeetings.app.data.user.dao.UsersDaoImpl;
import org.openmeetings.app.hibernate.beans.adresses.Adresses;
import org.openmeetings.app.hibernate.beans.basic.Sessiondata;
import org.openmeetings.app.hibernate.beans.domain.Organisation_Users;
import org.openmeetings.app.hibernate.beans.lang.Fieldlanguagesvalues;
import org.openmeetings.app.hibernate.beans.recording.RoomClient;
+import org.openmeetings.app.hibernate.beans.user.UserSipData;
import org.openmeetings.app.hibernate.beans.user.Userdata;
import org.openmeetings.app.hibernate.beans.user.Userlevel;
import org.openmeetings.app.hibernate.beans.user.Users;
@@ -459,11 +461,12 @@
Date age, String street, String additionalname, String zip, long
states_id, String town,
int availible, String telefon, String fax,
String mobil, String email, String comment, int status, List
organisations,
- int title_id, String phone) {
+ int title_id, String phone, String sip_user, String sip_pass, String
sip_auth) {
if (AuthLevelmanagement.getInstance().checkUserLevel(user_level) &&
user_id != 0) {
try {
Users us =
UsersDaoImpl.getInstance().getUser(user_id);
+
// Check for duplicates
boolean checkName = true;
@@ -489,7 +492,7 @@
us.setAvailible(availible);
us.setStatus(status);
us.setTitle_id(title_id);
-
+
if (level_id != 0)
us.setLevel_id(new
Long(level_id));
if (password.length() != 0) {
@@ -509,7 +512,33 @@
Organisationmanagement.getInstance().updateUserOrganisationsByUser(us,
organisations);
}
-// log.info("USER " + us.getLastname());
+
+ if (us.getUserSipData() == null) {
+ UserSipData userSipData = new
UserSipData();
+
+
userSipData.setUsername(sip_user);
+
userSipData.setUserpass(sip_pass);
+ userSipData.setAuthId(sip_auth);
+
+ Long userSipDataId =
UserSipDataDaoImpl.getInstance().addUserSipData(userSipData);
+
+
us.setUserSipData(UserSipDataDaoImpl.getInstance().getUserSipDataById(userSipDataId));
+
+ } else {
+
+ UserSipData userSipData =
UserSipDataDaoImpl.getInstance().getUserSipDataById(us.getUserSipData().getUserSipDataId());
+
+
userSipData.setUsername(sip_user);
+
userSipData.setUserpass(sip_pass);
+ userSipData.setAuthId(sip_auth);
+
+
UserSipDataDaoImpl.getInstance().updateUserSipData(userSipData);
+
+ us.setUserSipData(userSipData);
+
+ }
+
+ //log.info("USER " + us.getLastname());
Object idf =
HibernateUtil.createSession();
Session session =
HibernateUtil.getSession();
Transaction tx =
session.beginTransaction();
@@ -820,10 +849,13 @@
if (baseURL.length() != 0 &&
sendEmailWithVerficationCode == 1) {
sendConfirmation = true;
}
+
+ //TODO: Read and generate SIP-Data via
RPC-Interface Issue 1098
Long user_id = this.registerUserInit(3, 1, 0, 1, login,
Userpass,lastname, firstname, email, age,
street, additionalname,fax, zip, states_id, town,
- language_id, true, new LinkedList(), phone, baseURL,
sendConfirmation);
+
language_id, true, new LinkedList(), phone, baseURL,
+
sendConfirmation,"","","");
// Get the default organisation_id of
registered users
if (user_id>0){
@@ -873,7 +905,8 @@
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 organisations, String phone, String baseURL, Boolean
sendConfirmation) throws Exception {
+ List organisations, String phone, String baseURL, Boolean
sendConfirmation,
+ String sip_user, String sip_pass, String sip_auth)
throws Exception {
//TODO: make phone number persistent
// User Level must be at least Admin
// Moderators will get a temp update of there UserLevel to add
Users to
@@ -904,7 +937,9 @@
status = 0;
}
- Long user_id = this.addUser(level_id, availible, status,firstname,
login, lastname, language_id, Userpass,address_id, age, hash);
+ Long user_id = this.addUser(level_id, availible, status,firstname,
login, lastname, language_id,
+
Userpass,address_id, age, hash,
+
sip_user, sip_pass, sip_auth);
if (user_id==null) {
return new Long(-111);
}
@@ -958,7 +993,8 @@
*/
public Long addUser(long level_id, int availible, int status,
String firstname, String login, String lastname, long
language_id,
- String userpass, long adress_id, Date age, String hash)
{
+ String userpass, long adress_id, Date age, String hash,
+ String sip_user, String sip_pass, String sip_auth) {
try {
Users users = new Users();
users.setFirstname(firstname);
@@ -975,6 +1011,16 @@
users.setStarttime(new Date());
users.setActivatehash(hash);
+ UserSipData userSipData = new UserSipData();
+
+ userSipData.setUsername(sip_user);
+ userSipData.setUserpass(sip_pass);
+ userSipData.setAuthId(sip_auth);
+
+ Long userSipDataId =
UserSipDataDaoImpl.getInstance().addUserSipData(userSipData);
+
+
users.setUserSipData(UserSipDataDaoImpl.getInstance().getUserSipDataById(userSipDataId));
+
// this is needed cause the language is not a needed
data at
// registering
if (language_id != 0) {
=======================================
---
/trunk/singlewebapp/src/app/org/openmeetings/app/installation/ImportInitvalues.java
Sat Jan 9 11:15:10 2010
+++
/trunk/singlewebapp/src/app/org/openmeetings/app/installation/ImportInitvalues.java
Thu Jan 21 07:54:24 2010
@@ -335,7 +335,8 @@
Long user_id =
Usermanagement.getInstance().registerUserInit(
new Long(3), 3, 1, 1, username, userpass,
"lastname",
"firstname", email, new java.util.Date(),
"street", "no",
- "fax", "zip", 1, "town", 0, false, null, "phone",
"", false);
+ "fax", "zip", 1, "town", 0, false, null, "phone",
"", false,
+ "","","");
log.debug("Installation - User Added user-Id "+user_id);
=======================================
---
/trunk/singlewebapp/src/app/org/openmeetings/app/ldap/LdapLoginManagement.java
Fri Dec 4 04:17:12 2009
+++
/trunk/singlewebapp/src/app/org/openmeetings/app/ldap/LdapLoginManagement.java
Thu Jan 21 07:54:24 2010
@@ -462,6 +462,9 @@
Long newUserId = null;
try{
+
+ //CHeck if LDAP Users get a SIP Account Issue 1099
+
newUserId=
Usermanagement.getInstance().registerUserInit(
2,//user_level
1,//level_id
@@ -484,7 +487,9 @@
null,
phone,
"",//BaseURL is empty as we do not send an
Email here
- false);//send verification code
+ false,//send verification code
+ "","",""//sip_user, sip_pass, sip_auth
+ );
}catch(Exception e){
log.error("Error creating user : " + e.getMessage());
}
=======================================
---
/trunk/singlewebapp/src/app/org/openmeetings/app/remote/UserService.java
Mon Oct 26 08:27:13 2009
+++
/trunk/singlewebapp/src/app/org/openmeetings/app/remote/UserService.java
Thu Jan 21 07:54:24 2010
@@ -294,7 +294,11 @@
Long.valueOf(argObjectMap.get("states_id").toString()).longValue(),
argObjectMap.get("town").toString(),
0,
true,
- organisations,
argObjectMap.get("phone").toString(),"",false);
+ organisations,
argObjectMap.get("phone").toString(),
+ "",false,
+ argObjectMap.get("sip_user").toString(),
+ argObjectMap.get("sip_pass").toString(),
+
argObjectMap.get("sip_auth").toString());
} else {
return
Usermanagement.getInstance().updateUser(user_level,user_idClient,
Long.valueOf(argObjectMap.get("level_id").toString()).longValue(),
argObjectMap.get("login").toString(),
@@ -309,7 +313,11 @@
Integer.valueOf(argObjectMap.get("status").toString()).intValue(),
organisations,
Integer.valueOf(argObjectMap.get("title_id").toString()).intValue(),
- argObjectMap.get("phone").toString());
+ argObjectMap.get("phone").toString(),
+ argObjectMap.get("sip_user").toString(),
+ argObjectMap.get("sip_pass").toString(),
+ argObjectMap.get("sip_auth").toString()
+ );
}
} catch (Exception ex) {
log.error("[saveOrUpdateUser]: ",ex);
=======================================
---
/trunk/singlewebapp/src/test/org/openmeetings/test/basic/StartUpData.java
Mon Oct 12 02:56:03 2009
+++
/trunk/singlewebapp/src/test/org/openmeetings/test/basic/StartUpData.java
Thu Jan 21 07:54:24 2010
@@ -56,7 +56,8 @@
Long user_id = Usermanagement.getInstance().registerUserInit(new
Long(3),3, 1, 1,
"swagner", "test", "lastname", "firstname",
"[email protected]", new java.util.Date(), "street",
"no", "fax",
- "zip", 1, "town", 0, false, null, "phone", "",
false);
+ "zip", 1, "town", 0, false, null, "phone", "",
false,
+ "","","");
//Add default group
Long organisation_id =
Organisationmanagement.getInstance().addOrganisation("default", user_id);
=======================================
---
/trunk/singlewebapp/src/test/org/openmeetings/test/init/Addadminuser.java
Fri Nov 13 07:33:01 2009
+++
/trunk/singlewebapp/src/test/org/openmeetings/test/init/Addadminuser.java
Thu Jan 21 07:54:24 2010
@@ -22,7 +22,9 @@
//(long user_level,String login, String Userpass, String lastname,
String firstname, String email, int age, String street, String
additionalname, String fax, String zip, long states_id, String town, long
language_id)
long user_id = Usermanagement.getInstance().registerUserInit(new
Long(3), 3, 1, 1, "swagner4", "*****", "Wagner",
"Sebastian", "[email protected]", new
java.util.Date(),
- "Bleichstrasse", "92", "fax number", "75173", 1, "Pforzheim", 1, true,
null, "phone", "", false);
+ "Bleichstrasse", "92", "fax number", "75173", 1,
"Pforzheim", 1,
+ true, null, "phone", "", false,
+ "","","");
log.error("new User: "+user_id);
}
--
You received this message because you are subscribed to the Google Groups
"OpenMeetings developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/openmeetings-dev?hl=en.