[3102] | 1 | (function() |
---|
[5041] | 2 | {var _autoStatus;var _autoStatusTime=60000;var addUser=null;var conn=null;var fullName="";var path="";var path_phpgwapi="";var _preferencesIM="";var selectEditable=null;var showhidden=null;var statusUserIM="";var _statusMessage="";var timeoutId=null;var userCurrent=null;var _timeOutNotification="";var Xtools=null;var zIndex=9001;var windowPopUp=[];var add_user=new Image();add_user.src=path_jabberit+'templates/default/images/adduser_azul.png';var arrow_down=new Image();arrow_down.src=path_jabberit+'templates/default/images/arrow_down.gif';var arrow_right=new Image();arrow_right.src=path_jabberit+'templates/default/images/arrow_right.gif';function actionButton() |
---|
[3102] | 3 | {if(arguments.length>0) |
---|
| 4 | {var e=arguments[0];var _element=(e.target)?e.target:e.srcElement;var jid=arguments[1];var coord=null;if(!e) |
---|
| 5 | e=window.event;var _X=e.clientX+document.body.scrollLeft-document.body.clientLeft;var _Y=e.clientY+document.body.scrollTop-document.body.clientTop;coord={X:_X,Y:_Y};var _onContextMenu=function() |
---|
| 6 | {return false;};window.document.oncontextmenu=_onContextMenu;if(e.button) |
---|
| 7 | {if(e.button>1) |
---|
| 8 | optionsItensContact(jid,coord);else |
---|
| 9 | TrophyIM.rosterClick(jid);} |
---|
| 10 | else if(e.which) |
---|
| 11 | {if(e.which>1) |
---|
| 12 | optionsItensContact(jid,coord);else |
---|
| 13 | if(e.target.id) |
---|
| 14 | TrophyIM.rosterClick(jid);} |
---|
| 15 | setTimeout(function() |
---|
| 16 | {window.document.oncontextmenu=function() |
---|
| 17 | {return true;};},500);}} |
---|
| 18 | function addContact() |
---|
| 19 | {if(arguments.length>0) |
---|
| 20 | addUser.add();else |
---|
| 21 | addUser.show();} |
---|
| 22 | function addIcon() |
---|
| 23 | {var div_write_msg=(getElement('em_div_write_msg')!=null)?getElement('em_div_write_msg'):null;var StatusBar=(getElement('divStatusBar')!=null)?getElement('divStatusBar'):null;var StatusBarIM=(getElement('JabberMessenger')!=null)?getElement('JabberMessenger'):null;if((div_write_msg&&StatusBarIM)!=null) |
---|
| 24 | {div_write_msg.parentNode.insertBefore(StatusBarIM,div_write_msg);StatusBarIM.style.paddingLeft='33px';return;} |
---|
| 25 | if(!StatusBarIM) |
---|
| 26 | {StatusBarIM=document.createElement('div');StatusBarIM.setAttribute('id','JabberMessenger');} |
---|
| 27 | if(StatusBar) |
---|
[6705] | 28 | {StatusBar.style.paddingLeft='33px';var _div=document.createElement('div');_div.appendChild(StatusBar.parentNode.removeChild(StatusBar.previousSibling));StatusBar.parentNode.insertBefore(_div,StatusBar);var _fastMenu=top.document.createElement('div');_fastMenu.setAttribute('id','fast_menu_jabber_expresso');_fastMenu.style.background='no-repeat';_fastMenu.style.backgroundImage='url('+arrow_down.src+')';_fastMenu.style.float='left';_fastMenu.style.height='15px';_fastMenu.style.left='17px';_fastMenu.style.margin='8 0 0 10px';_fastMenu.style.padding='0px';_fastMenu.style.position='absolute';_fastMenu.style.width='15px';_fastMenu.style.cursor='pointer';StatusBarIM.insertBefore(_fastMenu,StatusBarIM.firstChild);configEvents(_fastMenu,'onclick',function(){fastMenu(_fastMenu);});var _statusJabber=top.document.createElement('div');_statusJabber.setAttribute('id','status_jabber_expresso');_statusJabber.style.background='no-repeat';_statusJabber.style.backgroundImage='url('+add_user.src+')';_statusJabber.style.float='left';_statusJabber.style.height='18px';_statusJabber.style.left='19px';_statusJabber.style.margin='0 0 0 10px';_statusJabber.style.padding='0px';_statusJabber.style.position='absolute';_statusJabber.style.width='18px';_statusJabber.style.cursor='pointer';_statusJabber.style.zindex='999999';StatusBarIM.insertBefore(_statusJabber,StatusBarIM.firstChild);StatusBar.insertBefore(StatusBarIM,StatusBar.firstChild);if(_preferencesIM[0]=="openWindowJabberit:true") |
---|
[3102] | 29 | {configEvents(_statusJabber,'onclick',function(){rosterDiv();});} |
---|
| 30 | else |
---|
| 31 | {configEvents(_statusJabber,'onclick',function(){TrophyIM.load();});}}} |
---|
| 32 | function addNewUser() |
---|
| 33 | {addUser.newUser();} |
---|
| 34 | function autoStatus() |
---|
| 35 | {var _div_status=(getElement('status_jabber_expresso')!=null)?getElement('status_jabber_expresso'):null;if(_autoStatus) |
---|
| 36 | clearTimeout(_autoStatus);if(_div_status!=null) |
---|
| 37 | {var _status=_div_status.style.backgroundImage;_status=_status.substr(_status.lastIndexOf('/')+1);_status=_status.substr(0,_status.indexOf('.'));if(_status=="xa"&&_div_status.getAttribute('autoStatus')) |
---|
| 38 | {if(getStatusMessage()!="") |
---|
| 39 | TrophyIM.setPresence("available",getStatusMessage());else |
---|
| 40 | TrophyIM.setPresence("available");_div_status.removeAttribute('autoStatus');loadscript.setStatusJabber("Disponível","available");}} |
---|
| 41 | var TimeStatus=_preferencesIM[2].split(':');if(TimeStatus[1]) |
---|
| 42 | _autoStatus=setTimeout(function(){autoStatusHandler();},parseInt(TimeStatus[1])*_autoStatusTime);else |
---|
| 43 | _autoStatus=setTimeout(function(){autoStatusHandler();},parseInt(_autoStatusTime));} |
---|
| 44 | function autoStatusHandler() |
---|
| 45 | {var _div_status=(getElement('status_jabber_expresso')!=null)?getElement('status_jabber_expresso'):null;if(_div_status!=null) |
---|
| 46 | {var _status=_div_status.style.backgroundImage;_status=_status.substr(_status.lastIndexOf('/')+1);_status=_status.substr(0,_status.indexOf('.'));if(_status=="available") |
---|
| 47 | {if(getStatusMessage()!="") |
---|
| 48 | TrophyIM.setPresence("xa",getStatusMessage());else |
---|
| 49 | TrophyIM.setPresence("xa");_div_status.setAttribute('autoStatus','true');loadscript.setStatusJabber("Não Disponível","xa");}}} |
---|
| 50 | function clrAllContacts() |
---|
| 51 | {getElement("JabberIMRoster").innerHTML="";} |
---|
| 52 | function configEvents(pObj,pEvent,pHandler) |
---|
| 53 | {if(typeof pObj=='object') |
---|
| 54 | {if(pEvent.substring(0,2)=='on') |
---|
| 55 | pEvent=pEvent.substring(2,pEvent.length);if(arguments.length==3) |
---|
| 56 | {if(pObj.addEventListener) |
---|
| 57 | pObj.addEventListener(pEvent,pHandler,false);else if(pObj.attachEvent) |
---|
| 58 | pObj.attachEvent('on'+pEvent,pHandler);} |
---|
| 59 | else if(arguments.length==4) |
---|
| 60 | {if(pObj.removeEventListener) |
---|
| 61 | pObj.removeEventListener(pEvent,pHandler,false);else if(pObj.detachEvent) |
---|
| 62 | pObj.detachEvent('on'+pEvent,pHandler);}}} |
---|
| 63 | function disabledNotificationNewUsers() |
---|
| 64 | {var _notification=getElement('notification_new_users_jabber');var _statusJabber=getElement('status_jabber_expresso');_notification.style.display='none';_statusJabber.style.background="url('"+path_jabberit+"templates/default/images/"+statusUserIM+".gif') no-repeat";if(_timeOutNotification) |
---|
| 65 | clearTimeout(_timeOutNotification);TrophyIM.controll.notificationNewUsers=0;} |
---|
| 66 | function enabledNotificationNewUsers() |
---|
| 67 | {var _notification=getElement('notification_new_users_jabber');var _statusJabber=getElement('status_jabber_expresso');if(_notification&&_statusJabber) |
---|
| 68 | {if(_notification.style.display=='none') |
---|
| 69 | {_notification.style.display='block';_statusJabber.style.background="url('"+path_jabberit+"templates/default/images/alert_mini.png') no-repeat";if(_timeOutNotification) |
---|
| 70 | clearTimeout(_timeOutNotification);_timeOutNotification=setTimeout(function(){enabledNotificationNewUsers();},2000);} |
---|
| 71 | else |
---|
| 72 | {_notification.style.display='none';_statusJabber.style.background="url('"+path_jabberit+"templates/default/images/"+statusUserIM+".gif') no-repeat";if(_timeOutNotification) |
---|
| 73 | clearTimeout(_timeOutNotification);_timeOutNotification=setTimeout(function(){enabledNotificationNewUsers();},800);}}} |
---|
| 74 | function fastMenu() |
---|
| 75 | {if(arguments.length>0) |
---|
| 76 | {var element=arguments[0];if(showhidden==null) |
---|
[3680] | 77 | showhidden=new ShowHidden(300);var _options=[['Adicionar Contato','loadscript.addContact();'],['Preferências','loadscript.preferences();']];if(im_chatroom=="false") |
---|
| 78 | {_options[2]=['Sala(s) de Bate-Papo','loadscript.getListRooms();'];} |
---|
| 79 | var _itens="";for(var i in _options) |
---|
[3102] | 80 | {if(_options[i].constructor==Function) |
---|
| 81 | continue;_itens+='<img src="'+arrow_right.src+'"/>';_itens+='<span style="cursor:pointer; margin:3px;" onclick='+_options[i][1]+'>';_itens+=_options[i][0]+'</span><br/>';} |
---|
| 82 | var _optionsItens=document.createElement("div");_optionsItens.id="fastMenu_Jabber";_optionsItens.style.marginTop="19px";_optionsItens.style.marginLeft="-8px";_optionsItens.className="x-menu";_optionsItens.style.zIndex='999999';_optionsItens.innerHTML=_itens;_optionsItens.onclick=function(){showhidden.hiddenObject(false);};_optionsItens.onmouseout=function(){showhidden.hiddenObject(false);};_optionsItens.onmouseover=function(){showhidden.hiddenObject(true);};showhidden.action('onmouseover','onmouseout',_optionsItens);element.parentNode.appendChild(_optionsItens);}} |
---|
| 83 | function getElement(elementId) |
---|
| 84 | {return document.getElementById(elementId);} |
---|
[5041] | 85 | function getBrowserCompatible() |
---|
| 86 | {return SnifferBrowser.isLoadApp('firefox');} |
---|
[3102] | 87 | function getPhotoUser(jid) |
---|
| 88 | {try |
---|
| 89 | {var _divPhoto=getElement(jid+'__photo');if(_divPhoto.style.backgroundImage.indexOf('photo.png')>0) |
---|
[3308] | 90 | {var _imgUser=path_jabberit+'inc/WebService.php?'+Date.parse(new Date);_imgUser+='&photo_ldap='+jid;_divPhoto.style.backgroundImage='url('+_imgUser+')';}}catch(e){}} |
---|
[3102] | 91 | function getShowContactsOffline() |
---|
| 92 | {if(_preferencesIM[3]) |
---|
| 93 | {var showOffline=_preferencesIM[3].split(":");if(showOffline[1]==="true") |
---|
| 94 | return true;else |
---|
| 95 | return false;} |
---|
| 96 | return true;} |
---|
| 97 | function getSmiles(String) |
---|
[4360] | 98 | {String=String.replace(/:\)|:-\)/g," <img src='"+path_jabberit+"templates/default/images/smiles/1.gif'/> ");String=String.replace(/:-D/g," <img src='"+path_jabberit+"templates/default/images/smiles/2.gif'/> ");String=String.replace(/;-\)/g," <img src='"+path_jabberit+"templates/default/images/smiles/3.gif'/> ");String=String.replace(/=-O/g," <img src='"+path_jabberit+"templates/default/images/smiles/4.gif'/> ");String=String.replace(/:P/g," <img src='"+path_jabberit+"templates/default/images/smiles/5.gif'/> ");String=String.replace(/8-\)/g," <img src='"+path_jabberit+"templates/default/images/smiles/6.gif'/> ");String=String.replace(/\>:o/g," <img src='"+path_jabberit+"templates/default/images/smiles/7.gif'/> ");String=String.replace(/:-\$/g," <img src='"+path_jabberit+"templates/default/images/smiles/8.gif'/> ");String=String.replace(/:s|:-X/g," <img src='"+path_jabberit+"templates/default/images/smiles/9.gif'/> ");String=String.replace(/:-\(/g," <img src='"+path_jabberit+"templates/default/images/smiles/10.gif'/> ");String=String.replace(/:\'\(/g," <img src='"+path_jabberit+"templates/default/images/smiles/11.gif'/> ");String=String.replace(/:\|/g," <img src='"+path_jabberit+"templates/default/images/smiles/12.gif'/> ");String=String.replace(/O:-\)/g," <img src='"+path_jabberit+"templates/default/images/smiles/13.gif'/> ");String=String.replace(/\*\*@#%/g," <img src='"+path_jabberit+"templates/default/images/smiles/14.gif'/> ");String=String.replace(/\(I\)/g," <img src='"+path_jabberit+"templates/default/images/smiles/15.gif'/> ");String=String.replace(/C28I/g," <img src='"+path_jabberit+"templates/default/images/smiles/16.gif'/> ");String=String.replace(/CS2A/g," <img src='"+path_jabberit+"templates/default/images/smiles/17.gif' style='width:42px;height:36px;'/> ");String=String.replace(/\(CzzzzI\)/g," <img src='"+path_jabberit+"templates/default/images/smiles/18.gif'/> ");return String;} |
---|
[3102] | 99 | function getStatusUserIM() |
---|
| 100 | {return statusUserIM;} |
---|
| 101 | function getStatusMessage() |
---|
| 102 | {return _statusMessage;} |
---|
| 103 | function getUserCurrent() |
---|
| 104 | {return userCurrent;} |
---|
| 105 | function getZindex() |
---|
| 106 | {return zIndex++;} |
---|
| 107 | function groupsHidden() |
---|
| 108 | {if(arguments.length>0) |
---|
| 109 | {var _element=arguments[0];_element.style.background="url('"+path_jabberit+"templates/default/images/arrow_right.gif') no-repeat center left";_element.onclick=function(){groupsVisible(_element);};var _elementNext=_element.nextSibling;while(_elementNext) |
---|
| 110 | {if(_elementNext.nodeType==1) |
---|
| 111 | _elementNext.style.display="none";_elementNext=_elementNext.nextSibling;}}} |
---|
| 112 | function groupsVisible() |
---|
| 113 | {if(arguments.length>0) |
---|
| 114 | {var _element=arguments[0];_element.style.background="url('"+path_jabberit+"templates/default/images/arrow_down.gif') no-repeat center left";_element.onclick=function(){groupsHidden(_element);};var _elementNext=_element.nextSibling;while(_elementNext) |
---|
| 115 | {if(_elementNext.nodeType==1&&_elementNext.nodeName.toLowerCase()=="div") |
---|
| 116 | {var is_off=_elementNext.style.backgroundImage.indexOf("unavailable");if(is_off>0&&!getShowContactsOffline()) |
---|
| 117 | {_elementNext.style.display="none";getElement("span_show_"+_elementNext.id).style.display="none";} |
---|
| 118 | else |
---|
| 119 | {_elementNext.style.display="block";getElement("span_show_"+_elementNext.id).style.display="block";}} |
---|
| 120 | _elementNext=_elementNext.nextSibling;}}} |
---|
| 121 | function keyPressSearch() |
---|
| 122 | {if(arguments.length>0) |
---|
| 123 | {var ev=arguments[0];var element=arguments[1];if(ev.keyCode==13) |
---|
| 124 | if(element.value.length>=3) |
---|
| 125 | searchUser(element.value);else |
---|
[3308] | 126 | alert(i18n.YOUR_SEARCH_ARGUMENT_MUST_BE_LONGER_THAN_3_CHARACTERS+'.');}} |
---|
[3102] | 127 | function loginPage() |
---|
| 128 | {var paramsLoginPage={'username':(((Base64.decode(getUserCurrent().jid)))?Base64.decode(getUserCurrent().jid):""),'password':(((Base64.decode(getUserCurrent().password)))?Base64.decode(getUserCurrent().password):"")} |
---|
| 129 | var winLoginPage={id_window:"window_login_page",width:260,height:120,top:100,left:400,draggable:true,visible:"display",resizable:true,zindex:zIndex++,title:"Expresso Messenger - Login",closeAction:"remove",content:Xtools.parse(Xtools.xml("login_page"),"loginPage.xsl",paramsLoginPage)};_winBuild(winLoginPage);} |
---|
| 130 | function loadScripts(pFiles) |
---|
| 131 | {var loadJavaScript=function(pJs) |
---|
| 132 | {var newScript=document.createElement("script");newScript.setAttribute("type","text/javascript");newScript.setAttribute("src",pJs);return newScript;};var loadStyleSheet=function(pCss) |
---|
| 133 | {var newStyle=document.createElement("link");newStyle.setAttribute("rel","stylesheet");newStyle.setAttribute("type","text/css");newStyle.setAttribute("href",pCss);return newStyle;};for(var i=0;i<pFiles.length;i++) |
---|
| 134 | {if(pFiles[i].indexOf(".js")>-1) |
---|
| 135 | document.getElementsByTagName("head")[0].appendChild(loadJavaScript(pFiles[i]));if(pFiles[i].indexOf(".css")>-1) |
---|
| 136 | document.getElementsByTagName("head")[0].appendChild(loadStyleSheet(pFiles[i]));}} |
---|
| 137 | function notificationNewMessage() |
---|
| 138 | {var _doc=document;var _id=arguments[0];var _win_name=_id.replace(/\W/g,'');if(windowPOPUP(_id)) |
---|
| 139 | {_doc=windowPopUp[_win_name].document;} |
---|
| 140 | var oldTitle=_doc.title;var newTitle="## NOVA MENSAGEM ##";if(timeoutId==null) |
---|
| 141 | {timeoutId=setInterval(function() |
---|
| 142 | {_doc.title=(_doc.title==newTitle)?oldTitle:newTitle;},1000);configEvents(_doc,'onclick',function() |
---|
| 143 | {clearInterval(timeoutId);_doc.title=oldTitle;timeoutId=null;});configEvents(_doc,'onkeypress',function() |
---|
| 144 | {clearInterval(timeoutId);_doc.title=oldTitle;timeoutId=null;});}} |
---|
| 145 | function optionsItensContact() |
---|
| 146 | {if(arguments.length>0) |
---|
| 147 | {var jid=arguments[0];var coord=arguments[1];var element=getElement('itenContact_'+jid);var action=(element.getAttribute("subscription")==="not-in-roster")?"Adicionar":"Autorizar";if(showhidden==null) |
---|
| 148 | showhidden=new ShowHidden(300);var _options=[[action,'loadscript.setAutorization(\''+jid+'\')'],['Remover','loadscript.removeContact(\''+jid+'\')'],['Renomear','loadscript.renameContact(\''+jid+'\')'],['Trocar grupo','loadscript.renameGroup(\''+jid+'\')']];var _itens="";for(var i in _options) |
---|
| 149 | {if(typeof(_options[i])=="object") |
---|
| 150 | {_itens+='<img src="'+arrow_right.src+'"/>';_itens+='<span style="cursor:pointer;margin:3px;font-weight:normal;" onclick='+_options[i][1]+'>';_itens+=_options[i][0]+'</span><br/>';}} |
---|
| 151 | var _optionsItens=document.createElement("div");_optionsItens.className="x-menu";_optionsItens.style.top=coord.Y;_optionsItens.style.left=(coord.X-element.offsetLeft);_optionsItens.style.zIndex=getZindex();_optionsItens.innerHTML=_itens;_optionsItens.onclick=function(){showhidden.hiddenObject(false);};_optionsItens.onmouseout=function(){showhidden.hiddenObject(false);};_optionsItens.onmouseover=function(){showhidden.hiddenObject(true);};showhidden.action('onmouseover','onmouseout',_optionsItens);window.document.body.appendChild(_optionsItens);}} |
---|
| 152 | function parse() |
---|
| 153 | {if(arguments.length==2) |
---|
| 154 | return Xtools.parse(Xtools.xml(arguments[0]),arguments[1]);if(arguments.length===3) |
---|
| 155 | return Xtools.parse(Xtools.xml(arguments[0]),arguments[1],arguments[2]);} |
---|
| 156 | function preferences() |
---|
| 157 | {var paramPreferences={'path':path,'lang1':'Suas Preferências','lang2':'Conexão','lang3':'Conectar Automaticamente o IM','lang4':'Usuários OffLine','lang5':'Exibir amigos Offline','lang6':'Salvar','lang7':'Cancelar','lang8':'Janela de Contatos','lang9':'Abrir janela como Pop-up','lang10':'Ausente','lang11':'Definir status de ausente depois de','lang12':'minutos','lang13':'Mostrar Contatos','lang14':'Mostrar contatos desconectados','langYes':'Sim','langNo':'Não'};var _win_preferences={id_window:"jabberit_preferences",width:430,height:350,top:150,left:100,draggable:true,visible:"display",resizable:true,zindex:zIndex++,title:'Expresso Messenger - Preferências',closeAction:"remove",content:Xtools.parse(Xtools.xml('preferences'),'preferences.xsl',paramPreferences)};_winBuild(_win_preferences);var _pButtons={'lang1':'Salvar','lang2':'Fechar','onclickClose':'_winBuild("jabberit_preferences","remove");','onclickSubmit':'javascript:loadscript.setPreferences();'};document.getElementById('buttons_preferences_jabberit').innerHTML=Xtools.parse(Xtools.xml('buttons_main'),'buttons.xsl',_pButtons);var value1=_preferencesIM[0].split(':');var element1=document.getElementById(value1[0]);var valueSelect1=value1[1];for(var i=0;i<element1.options.length;i++) |
---|
| 158 | if(element1.options[i].value==valueSelect1) |
---|
| 159 | element1.options[i].selected=true;var value2=_preferencesIM[1].split(':');var value3=_preferencesIM[2].split(':');var element3=document.getElementById(value3[0]);element3.value=value3[1];var value4=_preferencesIM[3].split(':');var element4=document.getElementById(value4[0]);var valueSelect4=value4[1];for(var i=0;i<element4.options.length;i++) |
---|
| 160 | if(element4.options[i].value==valueSelect4) |
---|
| 161 | element4.options[i].selected=true;} |
---|
| 162 | function removeContact(jid) |
---|
| 163 | {TrophyIM.removeContact(jid);} |
---|
| 164 | function removeElement() |
---|
| 165 | {if(arguments.length>0) |
---|
| 166 | {var _element=arguments[0] |
---|
| 167 | if(_element!=null) |
---|
| 168 | {_element.parentNode.removeChild(_element);}}} |
---|
| 169 | function removeGroup() |
---|
| 170 | {var _parent=arguments[0];if(_parent.childNodes.length<=2) |
---|
| 171 | _parent.parentNode.removeChild(_parent);} |
---|
| 172 | function renameContact() |
---|
| 173 | {if(arguments.length>0) |
---|
| 174 | {var _jid=arguments[0];TrophyIM.renameContact(_jid);}} |
---|
| 175 | function renameGroup() |
---|
| 176 | {if(arguments.length>0) |
---|
| 177 | {var _jid=arguments[0];TrophyIM.renameGroup(_jid);}} |
---|
| 178 | function rosterDiv() |
---|
| 179 | {var _rosterDiv=function() |
---|
[3228] | 180 | {var winRosterDiv={id_window:"window_Roster_im",width:250,height:410,top:50,left:-1500,leftOld:50,draggable:true,visible:"display",resizable:true,zindex:zIndex++,title:"Expresso Messenger - Contatos",closeAction:"hidden",content:""};if(_preferencesIM[0]=="openWindowJabberit:false") |
---|
[3102] | 181 | {winRosterDiv.left=50;winRosterDiv.leftOld=-1500;} |
---|
[5041] | 182 | if(SnifferBrowser.isLoadApp()) |
---|
[3228] | 183 | {var _idUser=Base64.decode(getUserCurrent().jid);var paramListContact={'idUser':_idUser,'full_name':((fullName.length<25)?fullName:(fullName.substring(0,25)+"...")),'path_jabberit':path_jabberit,'help_expresso':help_expresso,'zIndex_':zIndex++};winRosterDiv.content=Xtools.parse(Xtools.xml("contacts_list"),"contactsList.xsl",paramListContact)} |
---|
| 184 | else |
---|
[5041] | 185 | {var paramList={'path':path_phpgwapi};winRosterDiv.width=280;winRosterDiv.height=430;winRosterDiv.content=Xtools.parse(Xtools.xml("navigator"),path_phpgwapi+"templates/default/xsl/navigatorCompatible.xsl",paramList);} |
---|
[3102] | 186 | _winBuild(winRosterDiv);getPhotoUser(_idUser);} |
---|
| 187 | setTimeout(function(){_rosterDiv();},200);} |
---|
| 188 | function searchUser() |
---|
| 189 | {var _input=getElement('search_user_jabber');if(_input.value.length>=3) |
---|
| 190 | addUser.search();else |
---|
| 191 | alert(i18n.YOUR_SEARCH_ARGUMENT_MUST_BE_LONGER_THAN_3_CHARACTERS+'.');} |
---|
| 192 | function setAutorization() |
---|
| 193 | {var divItenContact=null;if(arguments.length>0) |
---|
| 194 | {var jidTo=arguments[0];if(getElement('itenContact_'+jidTo)) |
---|
| 195 | divItenContact=getElement('itenContact_'+jidTo);} |
---|
| 196 | if(divItenContact) |
---|
| 197 | {var subscription=divItenContact.getAttribute('subscription');switch(subscription) |
---|
[3308] | 198 | {case'from':TrophyIM.setAutorization(jidTo,Base64.decode(this.getUserCurrent().jid),'subscribe');break;case'subscribe':TrophyIM.setAutorization(jidTo,Base64.decode(this.getUserCurrent().jid),'subscribed');break;case'none':TrophyIM.setAutorization(jidTo,Base64.decode(this.getUserCurrent().jid),'subscribe');break;case'to':TrophyIM.setAutorization(jidTo,Base64.decode(this.getUserCurrent().jid),'subscribed');removeElement(getElement('itenContactNotification_'+jidTo));break;case'not-in-roster':TrophyIM.setAutorization(jidTo,Base64.decode(this.getUserCurrent().jid),'subscribed');addUser.add(jidTo);break;}}} |
---|
[3102] | 199 | function setMessageStatus() |
---|
| 200 | {if(arguments.length>0) |
---|
| 201 | {var _element=arguments[0];var _parent=_element.parentNode;if(_element.nodeName.toLowerCase()=="label") |
---|
| 202 | {var _input=document.createElement("input");_input.size="35";_input.maxlength="35";_input.style.border="0";_input.value=_element.innerHTML;configEvents(_input,"onkeyup",function(e) |
---|
| 203 | {if(e.keyCode==13)loadscript.setMessageStatus(_input,_element);});configEvents(_input,"onblur",function(){loadscript.setMessageStatus(_input,_element)});if(_parent!=null) |
---|
| 204 | {if(_element!=null) |
---|
| 205 | _parent.removeChild(_element);if(_input!=null) |
---|
| 206 | _parent.appendChild(_input);} |
---|
| 207 | _input.focus();_input.select();} |
---|
| 208 | else |
---|
| 209 | {var _label=arguments[1];_statusMessage=_element.value.replace(/^\(+|\)+$/g,"");if((_statusMessage=_statusMessage.replace(/^\s+|\s+$|^\n|\n$/g,""))!="") |
---|
| 210 | _label.innerHTML="( "+_statusMessage+" )";else |
---|
| 211 | _label.innerHTML="( "+i18n.TYPE_YOUR_MESSAGE_HERE_STATUS+" )";if(_parent!=null) |
---|
| 212 | {if(_element!=null) |
---|
| 213 | _parent.removeChild(_element);if(_label!=null) |
---|
| 214 | _parent.appendChild(_label);} |
---|
| 215 | _statusMessage=((_statusMessage!=i18n.TYPE_YOUR_MESSAGE_HERE_STATUS)?_statusMessage:"");TrophyIM.setPresence("status",_statusMessage);}}} |
---|
| 216 | function setPreferences() |
---|
| 217 | {var elementOpenW=document.getElementById('openWindowJabberit');var value='';for(var i=0;i<elementOpenW.options.length;i++) |
---|
| 218 | if(elementOpenW.options[i].selected==true) |
---|
| 219 | {value='preferences1=openWindowJabberit:'+elementOpenW.options[i].value;_preferencesIM[0]='openWindowJabberit:'+elementOpenW.options[i].value;} |
---|
| 220 | value+='&preferences2=openWindowJabberitPopUp:false';_preferencesIM[1]='openWindowJabberitPopUp:false';var elementFlagIM=document.getElementById('flagAwayIM');if(elementFlagIM.value.length>0&&parseInt(elementFlagIM.value)>0) |
---|
| 221 | {_preferencesIM[2]='flagAwayIM:'+elementFlagIM.value;value+='&preferences3=flagAwayIM:'+elementFlagIM.value;} |
---|
| 222 | else |
---|
| 223 | {alert('Informe um valor igual ou maior que 1!');return false;} |
---|
| 224 | var elementShowOffline=document.getElementById('showContactsOfflineJabberit');for(var i=0;i<elementShowOffline.options.length;i++) |
---|
| 225 | if(elementShowOffline.options[i].selected==true) |
---|
| 226 | {_preferencesIM[3]='showContactsOfflineJabberit:'+elementShowOffline.options[i].value;value+='&preferences4=showContactsOfflineJabberit:'+elementShowOffline.options[i].value;} |
---|
| 227 | conn.go('p.pf.setPreferences',function(data) |
---|
| 228 | {if(data=='false') |
---|
| 229 | {alert('Erro salvando suas preferências!');} |
---|
| 230 | _winBuild('jabberit_preferences','remove');},value);} |
---|
| 231 | function setPresence() |
---|
| 232 | {if(arguments.length>0) |
---|
| 233 | {var element=arguments[0];if(showhidden==null) |
---|
| 234 | showhidden=new ShowHidden(300);var _status=[['Afastado','away','<img src="'+path_jabberit+'templates/default/images/away.gif" />'],['Disponível','available','<img src="'+path_jabberit+'templates/default/images/available.gif" />'],['Livre p/ Conversa','chat','<img src="'+path_jabberit+'templates/default/images/chat.gif" />'],['Não Disponível','xa','<img src="'+path_jabberit+'templates/default/images/xa.gif" />'],['Ocupado','dnd','<img src="'+path_jabberit+'templates/default/images/dnd.gif" />'],['Desconectado','unavailable','<img src="'+path_jabberit+'templates/default/images/unavailable.gif" />'],['Mensagem de Status...','status','<img src="'+path_jabberit+'templates/default/images/message_normal.gif" />'],];var _itens="";for(var i in _status) |
---|
| 235 | {if(typeof(_status[i])=="object") |
---|
| 236 | {_itens+='<span style="cursor:pointer;" onclick="TrophyIM.setPresence(\''+_status[i][1]+'\'); loadscript.setStatusJabber(\''+_status[i][0]+'\',\''+_status[i][1]+'\');">';_itens+=_status[i][2]+"<span style='margin:3px;'>"+_status[i][0]+"</span></span><br/>";}} |
---|
| 237 | var _statusItens=document.createElement("div");_statusItens.style.marginTop="65px";_statusItens.style.marginLeft="67px";_statusItens.className="x-menu";_statusItens.style.zIndex='99999';_statusItens.innerHTML=_itens;_statusItens.onclick=function(){showhidden.hiddenObject(false);};showhidden.action('onmouseover','onmouseout',_statusItens);element.parentNode.onmouseout=function(){showhidden.hiddenObject(false);};element.parentNode.onmouseover=function(){showhidden.hiddenObject(true);};element.parentNode.appendChild(_statusItens);}} |
---|
| 238 | function setSelectEditable(element,top,left) |
---|
| 239 | {if(getElement('selectBox0')==null) |
---|
| 240 | selectEditable.create(element,top,left);} |
---|
| 241 | function setStatusJabber() |
---|
| 242 | {if(arguments.length>0) |
---|
| 243 | {if(arguments[1]!='status') |
---|
| 244 | {var _text=arguments[0];var _img=statusUserIM=arguments[1];getElement('statusJabberText').innerHTML=_text;getElement('statusJabberImg').style.background="url('"+path_jabberit+"templates/default/images/"+_img+".gif')";getElement('status_jabber_expresso').style.background="url('"+path_jabberit+"templates/default/images/"+_img+".gif') no-repeat";}}} |
---|
| 245 | function _setUserCurrent(_user) |
---|
| 246 | {userCurrent={'jid':_user.jid.substring(11,_user.jid.length),'password':_user.password.substring(11,_user.password.length)}} |
---|
| 247 | function setUserCurrent() |
---|
| 248 | {if(getUserCurrent()==null) |
---|
| 249 | {conn.go('p.ff.data_0',function(_User) |
---|
| 250 | {conn.go('p.ff.data_1',function(_pass) |
---|
| 251 | {_setUserCurrent({jid:_User,password:_pass});});});}} |
---|
| 252 | var _stylesheets=[];var _links=document.getElementsByTagName('link');for(var i=0;i<_links.length;i++) |
---|
| 253 | if(_links.item(i).type&&_links.item(i).type.toLowerCase()=='text/css') |
---|
| 254 | _stylesheets[_stylesheets.length]=_links.item(i);function windowPOPUP() |
---|
| 255 | {var _id=arguments[0];var _win_name=_id.replace(/\W/g,'');if(arguments.length==1) |
---|
| 256 | {if(windowPopUp[_win_name]) |
---|
| 257 | return true;else |
---|
| 258 | return false;} |
---|
| 259 | if(arguments.length==2) |
---|
| 260 | {if(!windowPopUp[_win_name]) |
---|
| 261 | {windowPopUp[_win_name]=window.open('',_win_name+'__popup','height=355,width=380,top=50,left=50,toolbar=no,menubar=no,resizable=no,scrollbars=no,status=no,location=no,titlebar=no');var tmp=windowPopUp[_win_name].document;tmp.write('<html><head>');tmp.write('</head><body>');tmp.write('</body></html>');tmp.close();for(var i=0;i<_stylesheets.length;i++) |
---|
| 262 | tmp.documentElement.getElementsByTagName('head').item(0).appendChild(_stylesheets[i].cloneNode(true));var divPOP=getElement(_id+"__popUp");divPOP.style.background="url('"+path_jabberit+"templates/default/images/icon_down.png') no-repeat";divPOP.innerHTML="PopIn";function _close() |
---|
| 263 | {windowPopUp[_win_name].close();configEvents(divPOP,'onclick',_close,true);} |
---|
| 264 | configEvents(divPOP,'onclick',_close);var _content=tmp.documentElement.getElementsByTagName('body').item(0).appendChild(getElement(_id+'__chatBox').parentNode);_content.firstChild.scrollTop=_content.firstChild.scrollHeight;configEvents(windowPopUp[_win_name],'onbeforeunload',function() |
---|
| 265 | {delete windowPopUp[_win_name];divPOP.style.background="url('"+path_jabberit+"templates/default/images/icon_up.png') no-repeat";divPOP.innerHTML="PopUp";divPOP.onclick=function(){loadscript.windowPOPUP(_id,true);};_winBuild('window_chat_area_'+_id,"display").content(true);});_winBuild('window_chat_area_'+_id,'hidden');}}} |
---|
| 266 | function windowNotificationNewUsers() |
---|
| 267 | {var _users=Xtools.xml('notification_new_users');for(var user in TrophyIM.rosterObj.roster) |
---|
| 268 | {if(TrophyIM.rosterObj.roster[user].constructor==Function) |
---|
| 269 | continue;if(TrophyIM.rosterObj.roster[user].contact.jid!=Base64.decode(loadscript.getUserCurrent().jid)) |
---|
| 270 | {var _subscription=TrophyIM.rosterObj.roster[user].contact.subscription;if(_subscription=='to'||_subscription=='not-in-roster') |
---|
| 271 | {var _user=_users.createElement('user');var _jid=_users.createElement('jid');var _status=_users.createElement('status');_jid.appendChild(_users.createTextNode(TrophyIM.rosterObj.roster[user].contact.jid));_status.appendChild(_users.createTextNode(_subscription));_user.appendChild(_jid);_user.appendChild(_status);_users.documentElement.appendChild(_user);}}} |
---|
| 272 | var paramsNotification={'lang_1':"Notificação",'lang_2':"O(s) usuário(s) abaixo pedem sua autorização.",'lang_3':"Autorizar",'lang_4':"Remover"};var winNotification={id_window:"window_notification_new_users",width:400,height:300,top:100,left:400,draggable:true,visible:"display",resizable:true,zindex:zIndex++,title:"Expresso Messenger - Notificação de Novos Usuários",closeAction:"remove",content:Xtools.parse(_users,"notificationNewUsers.xsl",paramsNotification)};_winBuild(winNotification);} |
---|
| 273 | function createChatRooms() |
---|
[3129] | 274 | {_winBuild("window_List_Rooms_jabberit_messenger","remove");var paramCreateChatRoom={'lang_nameChatRoom':"Nome da Sala",'lang_nickName':"Apelido"};var winCreateChatRooms={id_window:"window_create_chat_rooms",width:360,height:160,top:100,left:410,draggable:true,visible:"display",resizable:true,zindex:loadscript.getZIndex(),title:"Expresso Messenger - Criar Sala de Bate Papo",closeAction:"remove",content:Xtools.parse(Xtools.xml("create_chat_room"),"createChatRoom.xsl",paramCreateChatRoom)};_winBuild(winCreateChatRooms);var _pButtons={'lang1':'Ingressar','lang2':'Fechar','onclickClose':'_winBuild("window_create_chat_rooms","remove");','onclickSubmit':'TrophyIM.createChatRooms(); _winBuild("window_create_chat_rooms","remove");'};document.getElementById('buttons_createChatRoom').innerHTML=Xtools.parse(Xtools.xml('buttons_main'),'buttons.xsl',_pButtons);} |
---|
[3102] | 275 | function listRooms(element) |
---|
| 276 | {element=element.getElementsByTagName('item');var _roomsCount=0;var _xml=Xtools.xml('listRooms');var _listRooms=_xml.documentElement;var show=function() |
---|
| 277 | {if(_roomsCount!=element.length) |
---|
[3129] | 278 | return false;var paramsListRooms={"path_jabberit":path_jabberit};var winListRooms={id_window:"window_List_Rooms_jabberit_messenger",width:450,height:300,top:100,left:400,draggable:true,visible:"display",resizable:true,zindex:loadscript.getZIndex(),title:"Expresso Messenger - Salas de Bate Papo",closeAction:"remove",content:Xtools.parse(_xml,"listRooms.xsl",paramsListRooms)};_winBuild(winListRooms);var _pButtons={'lang1':'Criar Nova Sala','lang2':'Fechar','onclickClose':'_winBuild("window_List_Rooms_jabberit_messenger","remove");','onclickSubmit':'loadscript.createChatRooms();'};document.getElementById('buttons_addChatRoom').innerHTML=Xtools.parse(Xtools.xml('buttons_main'),'buttons.xsl',_pButtons);};var _add_room=function(_room) |
---|
[3687] | 279 | {_roomsCount++;var _ROOM=_xml.createElement('room');var _JIDROOM=_xml.createElement('jidRoom');var nameRoom=_room.getAttribute('from');_ROOM.setAttribute('nameRoom',unescape((nameRoom.substring(0,nameRoom.indexOf("@"))).toUpperCase()));_JIDROOM.appendChild(_xml.createTextNode(nameRoom));_ROOM.appendChild(_JIDROOM);var _fields=_room.getElementsByTagName('field');for(var f=0;f<_fields.length;f++) |
---|
[3177] | 280 | {if(_fields[f].getAttribute('var')) |
---|
[3102] | 281 | {if(_fields[f].firstChild.hasChildNodes()&&_fields[f].getAttribute('var')=='muc#roominfo_description') |
---|
| 282 | {var _description=_xml.createElement("description");_description.appendChild(_xml.createTextNode(_fields[f].firstChild.firstChild.nodeValue));_ROOM.appendChild(_description);} |
---|
| 283 | if(_fields[f].firstChild.hasChildNodes()&&_fields[f].getAttribute('var')=='muc#roominfo_occupants') |
---|
| 284 | {var _occupants=_xml.createElement("occupants") |
---|
| 285 | _occupants.appendChild(_xml.createTextNode(_fields[f].firstChild.firstChild.nodeValue));_ROOM.appendChild(_occupants);}}} |
---|
| 286 | var _feature=_room.getElementsByTagName('feature');for(var f=0;f<_feature.length;f++) |
---|
[3177] | 287 | {if(_feature[f].getAttribute('var')) |
---|
[3102] | 288 | {if(_feature[f].getAttribute('var')=='muc_unsecured') |
---|
| 289 | {var _password=_xml.createElement("password");_password.appendChild(_xml.createTextNode("false"));_ROOM.appendChild(_password);} |
---|
| 290 | else if(_feature[f].getAttribute('var')=='muc_passwordprotected') |
---|
| 291 | {var _password=_xml.createElement("password");_password.appendChild(_xml.createTextNode("true"));_ROOM.appendChild(_password);}}} |
---|
| 292 | _listRooms.appendChild(_ROOM);show();};var _get_room_info=function(_room) |
---|
| 293 | {TrophyIM.connection.sendIQ($iq({"to":_room,"type":"get"}).c("query",{xmlns:Strophe.NS.DISCO_INFO}),_add_room,function(a) |
---|
[3127] | 294 | {_roomsCount++;show();},500);};if(element.length>0) |
---|
| 295 | {for(var i=0;i<element.length;i++) |
---|
[3102] | 296 | {_get_room_info(element[i].getAttribute('jid'));}} |
---|
[3127] | 297 | else |
---|
| 298 | {show();}} |
---|
[3102] | 299 | function getListRooms() |
---|
| 300 | {TrophyIM.getListRooms();} |
---|
| 301 | function joinRoom(jidRoom,nameRoom) |
---|
[3127] | 302 | {var append_nick=function(room,nick) |
---|
[3102] | 303 | {var room_nick=room;if(nick) |
---|
| 304 | {room_nick+="/"+nick;} |
---|
| 305 | return room_nick;} |
---|
| 306 | if(document.getElementById('window_chat_room_'+jidRoom+'__main')!=null) |
---|
| 307 | {_winBuild('window_chat_room_'+jidRoom,'display');} |
---|
| 308 | else |
---|
| 309 | {var nickName=Base64.decode(loadscript.getUserCurrent().jid);nickName=nickName.substring(0,nickName.indexOf('@'));var _prompt=prompt("Deseja informar um Apelido ?",nickName);if(_prompt) |
---|
[3320] | 310 | {_prompt=_prompt.replace(/^\s+|\s+$|^\n|\n$/g,"");var room_nick=append_nick(jidRoom,nickName);var nickChat=nickName.toString();if(_prompt&&_prompt!="") |
---|
| 311 | {nickChat=_prompt.toString();var room_nick=append_nick(jidRoom,_prompt);} |
---|
| 312 | TrophyIM.makeChatRoom(jidRoom,nameRoom);TrophyIM.activeChatRoom.name[TrophyIM.activeChatRoom.name.length]=room_nick;TrophyIM.joinChatRoom(room_nick);setTimeout(function() |
---|
| 313 | {var _message=nickName.toUpperCase()+" entrou como : "+nickChat;TrophyIM.sendMessageChatRoom(jidRoom,_message);},500);}} |
---|
[3129] | 314 | _winBuild("window_List_Rooms_jabberit_messenger","remove");} |
---|
[3102] | 315 | function loadIM() |
---|
| 316 | {if(arguments.length>0) |
---|
[6179] | 317 | {var files=[/*path_jabberit+'templates/default/css/button.css',*/path_jabberit+'templates/default/css/common.css',/*path_jabberit+'templates/default/css/selectEditableStyle.css',*/path_jabberit+'templates/default/css/'+theme_jabberit];fullName=arguments[0];_preferencesIM=arguments[1].split(";");path_phpgwapi=arguments[2];if(!_preferencesIM[3])_preferencesIM[3]="showContactsOfflineJabberit:true";loadScripts(files);setTimeout(function() |
---|
[3102] | 318 | {if(Xtools==null) |
---|
| 319 | Xtools=new xtools(path_jabberit);if(conn==null) |
---|
| 320 | conn=new AjaxConnector(path_jabberit);if(addUser==null) |
---|
| 321 | addUser=new addUserIM(Xtools,conn);if(selectEditable==null) |
---|
| 322 | selectEditable=new SelectEditable();addIcon();setTimeout(function() |
---|
| 323 | {if(_preferencesIM[0]==='openWindowJabberit:true') |
---|
[5041] | 324 | {if(SnifferBrowser.isLoadApp()) |
---|
| 325 | {TrophyIM.load();}}},1500);autoStatus();configEvents(document,'onmousemove',autoStatus);configEvents(document,'onkeypress',autoStatus);},2000);}} |
---|
| 326 | loadIM.prototype.adIcon=addIcon;loadIM.prototype.actionButton=actionButton;loadIM.prototype.addContact=addContact;loadIM.prototype.addNewUser=addNewUser;loadIM.prototype.clrAllContacts=clrAllContacts;loadIM.prototype.configEvents=configEvents;loadIM.prototype.createChatRooms=createChatRooms;loadIM.prototype.disabledNotificationNewUsers=disabledNotificationNewUsers;loadIM.prototype.enabledNotificationNewUsers=enabledNotificationNewUsers;loadIM.prototype.getListRooms=getListRooms;loadIM.prototype.getBrowserCompatible=getBrowserCompatible;loadIM.prototype.getPhotoUser=getPhotoUser;loadIM.prototype.getSmiles=getSmiles;loadIM.prototype.getStatusUserIM=getStatusUserIM;loadIM.prototype.getStatusMessage=getStatusMessage;loadIM.prototype.getShowContactsOffline=getShowContactsOffline;loadIM.prototype.getUserCurrent=getUserCurrent;loadIM.prototype.getZIndex=getZindex;loadIM.prototype.groupsHidden=groupsHidden;loadIM.prototype.groupsVisible=groupsVisible;loadIM.prototype.joinRoom=joinRoom;loadIM.prototype.keyPressSearch=keyPressSearch;loadIM.prototype.listRooms=listRooms;loadIM.prototype.loginPage=loginPage;loadIM.prototype.notification=notificationNewMessage;loadIM.prototype.parse=parse;loadIM.prototype.preferences=preferences;loadIM.prototype.searchUser=searchUser |
---|
[5183] | 327 | loadIM.prototype.setAutorization=setAutorization;loadIM.prototype.setMessageStatus=setMessageStatus;loadIM.prototype.setPreferences=setPreferences;loadIM.prototype.setPresence=setPresence;loadIM.prototype.setStatusJabber=setStatusJabber;loadIM.prototype.setSelectEditable=setSelectEditable;loadIM.prototype.setUserCurrent=setUserCurrent;loadIM.prototype.removeContact=removeContact;loadIM.prototype.removeElement=removeElement;loadIM.prototype.removeGroup=removeGroup;loadIM.prototype.renameContact=renameContact;loadIM.prototype.renameGroup=renameGroup;loadIM.prototype.rosterDiv=rosterDiv;loadIM.prototype.windowNotificationNewUsers=windowNotificationNewUsers;loadIM.prototype.windowPOPUP=windowPOPUP;window.LoadIM=loadIM;if(SnifferBrowser.isLoadApp('msie')) |
---|
[3102] | 328 | {configEvents(window,'onload',function() |
---|
| 329 | {if(!document.getElementById('cc_msg_err_serialize_data_unknown')) |
---|
| 330 | {var fix=document.createElement('input');fix.type='hidden';fix.id='cc_msg_err_serialize_data_unknown';document.appendChild(fix);} |
---|
| 331 | if(!window.showMessage) |
---|
[6179] | 332 | window.showMessage=function(){};});}})(); |
---|