diff --git a/src/main/java/org/olat/basesecurity/BaseSecurityManager.java b/src/main/java/org/olat/basesecurity/BaseSecurityManager.java index 28a3b64cbb1b041bb487b3df66e16aa9a78c81b2..52eb8842b95a9e8b68a20851af4551e928eaf4ea 100644 --- a/src/main/java/org/olat/basesecurity/BaseSecurityManager.java +++ b/src/main/java/org/olat/basesecurity/BaseSecurityManager.java @@ -72,7 +72,6 @@ import org.olat.resource.OLATResourceManager; import org.olat.user.ChangePasswordController; import org.olat.user.PersonalSettingsController; import org.olat.user.UserManager; -import org.springframework.beans.factory.annotation.Autowired; /** * <h3>Description:</h3> @@ -84,14 +83,12 @@ import org.springframework.beans.factory.annotation.Autowired; * @author Felix Jost, Florian Gnaegi */ public class BaseSecurityManager extends BasicManager implements BaseSecurity { + private DB dbInstance; private OLATResourceManager orm; private String dbVendor = ""; private static BaseSecurityManager INSTANCE; private static String GUEST_USERNAME_PREFIX = "guest_"; public static final OLATResourceable IDENTITY_EVENT_CHANNEL = OresHelper.lookupType(Identity.class); - - @Autowired - private DB dbInstance; /** * [used by spring] @@ -107,6 +104,22 @@ public class BaseSecurityManager extends BasicManager implements BaseSecurity { public static BaseSecurity getInstance() { return INSTANCE; } + + /** + * [used by spring] + * @param orm + */ + public void setResourceManager(OLATResourceManager orm) { + this.orm = orm; + } + + /** + * [used by Spring] + * @param dbInstance + */ + public void setDbInstance(DB dbInstance) { + this.dbInstance = dbInstance; + } /** * @see org.olat.basesecurity.Manager#init() @@ -1922,17 +1935,4 @@ public class BaseSecurityManager extends BasicManager implements BaseSecurity { } return guestIdentity; } - - - /** - * [used by spring] - * @param orm - */ - public void setResourceManager(OLATResourceManager orm) { - this.orm = orm; - } - - - - } \ No newline at end of file diff --git a/src/main/java/org/olat/basesecurity/_spring/baseSecurityContext.xml b/src/main/java/org/olat/basesecurity/_spring/baseSecurityContext.xml index 29f9354774e172954c057ba64cd70eac9add027a..fd5d28d8981fdcc3e2aab6afb140992a84d4fdeb 100644 --- a/src/main/java/org/olat/basesecurity/_spring/baseSecurityContext.xml +++ b/src/main/java/org/olat/basesecurity/_spring/baseSecurityContext.xml @@ -3,14 +3,15 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans - http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> + http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- manager --> <bean id="baseSecurityManager" class="org.olat.basesecurity.BaseSecurityManager" init-method="init" -depends-on="database, i18nModule, triggerI18nModuleInit"> -<property name="resourceManager" ref="resourceManager"/> -<property name="dbVendor" value="${db.vendor}" /> + depends-on="database, i18nModule, triggerI18nModuleInit"> + <property name="resourceManager" ref="resourceManager"/> + <property name="dbInstance" ref="database"/> + <property name="dbVendor" value="${db.vendor}" /> </bean> <!-- module --> diff --git a/src/main/java/org/olat/instantMessaging/ui/ChatController.java b/src/main/java/org/olat/instantMessaging/ui/ChatController.java index 330e8e8cda9a99b2acca1e0108d740e6ff770fbe..e1b0b4a99c5a3e5622b344ab62923304563ecb46 100644 --- a/src/main/java/org/olat/instantMessaging/ui/ChatController.java +++ b/src/main/java/org/olat/instantMessaging/ui/ChatController.java @@ -316,10 +316,7 @@ public class ChatController extends BasicController implements GenericEventListe } private void appendToMessageHistory(InstantMessage message, boolean focus) { - if(message == null || message.getBody() == null) { - System.out.println(); - } - + if(message == null || message.getBody() == null) return; String m = message.getBody().replaceAll("<br/>\n", "\r\n"); m = prepareMsgBody(m.replaceAll("<", "<").replaceAll(">", ">")).replaceAll("\r\n", "<br/>\n"); diff --git a/src/main/java/org/olat/instantMessaging/ui/ChatManagerController.java b/src/main/java/org/olat/instantMessaging/ui/ChatManagerController.java index 82ccae3a8a95b4db966af92c38e0e87f810ba22c..75f5d00c539fb351691a075384d9e474981d306c 100644 --- a/src/main/java/org/olat/instantMessaging/ui/ChatManagerController.java +++ b/src/main/java/org/olat/instantMessaging/ui/ChatManagerController.java @@ -135,7 +135,7 @@ public class ChatManagerController extends BasicController { int offsetX = 100 + (chats.size() * 10); int offsetY = 100 + (chats.size() * 5); String roomName = translate("im.chat.with") + ": " + buddy.getName(); - ChatController chat = new ChatController(ureq, getWindowControl(), ores, roomName, buddy.getIdentityKey(), false, 400, 300, offsetX, offsetY); + ChatController chat = new ChatController(ureq, getWindowControl(), ores, roomName, buddy.getIdentityKey(), false, 400, 320, offsetX, offsetY); listenTo(chat); container.put(chat.getOlatResourceable().getResourceableId().toString(), chat.getInitialComponent()); chats.put(chat.getOlatResourceable().getResourceableId(), chat); diff --git a/src/main/java/org/olat/instantMessaging/ui/_content/chat.html b/src/main/java/org/olat/instantMessaging/ui/_content/chat.html index 4cc745cd11178f887779eddc918edcb93c531f78..e87e3b33c62ce194a2b46f4e3675f35ff81bed8f 100644 --- a/src/main/java/org/olat/instantMessaging/ui/_content/chat.html +++ b/src/main/java/org/olat/instantMessaging/ui/_content/chat.html @@ -1,42 +1,38 @@ -<div class="o_instantmessaging_chat"> - <div class="b_clearfix"> - $r.render("im.today") | $r.render("im.lastweek") | $r.render("im.lastmonth") - #if (!$isAjaxMode) - <div class="b_float_right">$r.render("refresh")</div> - #end - </div> - $r.render("chatMsgFieldPanel") - <div class="o_instantmessaging_chat_form"> - $r.render("sendMessageForm") - </div> -</div> <script type="text/javascript"> /* <![CDATA[ */ +function resize_${panelName}() { + var win = jQuery('#${panelName}'); + jQuery('.o_instantmessaging_chat_history', win).each(function(index, el){ + jQuery(el).height(win.height() - 100); + jQuery(el).scrollTop(el.scrollHeight); + }); +} function tweak_${panelName}() { - try { - var win = jQuery('#${panelName}'); - jQuery('.o_instantmessaging_chat_history', win).each(function(index, el){ - var historyEl = jQuery(el); - historyEl.height(win.height() - 150); - historyEl.scrollTop(el.scrollHeight); - }); - } catch (e) { /**/ } + try { + resize_${panelName}(); + } catch (e) { if(console) console.log(e) } } function focus_${panelName}() { try { - var win = Ext.getCmp('${panelName}'); - var histEl = win.body.dom.getElementsByClassName('o_instantmessaging_chat_history'); - if (histEl.length == 1) { - histEl[0].style.height=win.getSize().height-150 + 'px'; - histEl[0].scrollTop = histEl[0].scrollHeight; - } - + resize_${panelName}(); var el = document.getElementById('o_fioinput_${panelName}'); if(el != null) { el.focus(); el.focus(); //stupid IE needs an extra focus call to work } - } catch (e) { /**/ } + } catch (e) { if(console) console.log(e) } } /* ]]> */ -</script> \ No newline at end of file +</script> +<div class="o_instantmessaging_chat"> + <div class="b_clearfix"> + $r.render("im.today") | $r.render("im.lastweek") | $r.render("im.lastmonth") + #if (!$isAjaxMode) + <div class="b_float_right">$r.render("refresh")</div> + #end + </div> + $r.render("chatMsgFieldPanel") + <div class="o_instantmessaging_chat_form"> + $r.render("sendMessageForm") + </div> +</div> diff --git a/src/main/java/org/olat/instantMessaging/ui/_content/chatMsgField.html b/src/main/java/org/olat/instantMessaging/ui/_content/chatMsgField.html index a02d7c8204e192329af00074d3934860fc0a22ba..82f32b90093f8791c6c8a9aa6c3a277e2a0d4a4a 100644 --- a/src/main/java/org/olat/instantMessaging/ui/_content/chatMsgField.html +++ b/src/main/java/org/olat/instantMessaging/ui/_content/chatMsgField.html @@ -41,20 +41,17 @@ #end </div> #if($focus) - <script>jQuery(function(){try{focus_${panelName}();}catch(e){}});</script> + <script type="text/javascript">jQuery(function(){try{focus_${panelName}();}catch(e){ if(console) console.log(e) }});</script> #else - <script>jQuery(function(){try{tweak_${panelName}();}catch(e){}});</script> + <script type="text/javascript">jQuery(function(){try{tweak_${panelName}();}catch(e){ if(console) console.log(e) }});</script> #end <script type="text/javascript"> /* <![CDATA[ */ //setTimeout used because otherwise it would not work the first time the chatwindow is displayed - jQuery(function() { - jQuery('#$id').each(function(index, el) { - var chatEl = jQuery(el); - if(chatEl.offset().top < chatEl.height()) { - chatEl.scrollTop(chatEl.height() + 13); - } - }) - }); + setTimeout(function() { + try{ + resize_${panelName}(); + } catch(e) { console.log(e) } + }, 100); /* ]]> */ </script> \ No newline at end of file