0byt3m1n1
Path:
/
data
/
applications
/
aps
/
tikiwiki
/
7.0-0
/
standard
/
htdocs
/
templates
/
modules
/
[
Home
]
File: mod-minichat.tpl
{tikimodule error=$module_params.error title=$tpl_module_title name="minichat" flip=$module_params.flip decorations=$module_params.decorations nobox=$module_params.nobox notitle=$module_params.notitle} {if $module_params.nochannelbar && $module_params.nochannelbar != "n"} <div id='minichatchans' class='minichatchans' style="height:0em;visibility:hidden"></div> {else} <div id='minichatchans' class='minichatchans'></div> {/if} <div id='minichat' class='minichat' style='overflow-x: hidden; overflow-y: scroll; width: 100%; height: {$module_rows}em;'> </div> <div style='width: 100%; overflow: hidden;'> <form name='minichatinputform' action='javascript:minichatpost();'> <input name='minichatinput' id='minichatinput' type='text' style='width: 95%;' autocomplete='off' /><input type='submit' value="{tr}OK{/tr}" style='display: none;' /> </form> </div> {/tikimodule} {literal} <script language='javascript' type='text/javascript'> var minichat_lasttimeout=6000; var minichat_firstchan=null; var minichat_lastchan=null; var minichat_bigid=0; var minichat_selectedchan=null; function minichat_urlencode(str) { str = encodeURIComponent(str); str = str.replace('+', '%2B'); str = str.replace('%20', '+'); str = str.replace('*', '%2A'); str = str.replace('/', '%2F'); str = str.replace('@', '%40'); return str; } function minichat_mkurl() { var date=new Date(); var u="tiki-minichat_ajax.php?lasttimeout="+minichat_lasttimeout+"&iebug="+date.getTime(); u+="&chans="; var c=minichat_firstchan; while(c) { var cname=minichat_urlencode(c.name); u+=cname+';'+c.lastid; c=c.nxt; if (c) u+=','; } return u; } function minichat_loadJS(file) { var head = document.getElementsByTagName('head').item(0); var scriptTag = document.getElementById('minichat_loadJS'); if (scriptTag) head.removeChild(scriptTag); script = document.createElement('script'); script.src = file; script.type = 'text/javascript'; script.id = 'minichat_loadJS'; head.appendChild(script); } function minichat_update() { var u=minichat_mkurl(); minichat_loadJS(u); } function minichatpost() { var obj=document.getElementById('minichatinput'); var value=minichat_urlencode(obj.value); var u=minichat_mkurl(); if (minichat_selectedchan) u+="&msgon="+minichat_urlencode(minichat_selectedchan.name); u+="&msg="+value; minichat_loadJS(u); obj.value=''; } function minichat_newelem(type, vals) { var elem=document.createElement(type); for (key in vals) { //elem[key]=vals[key]; elem.setAttribute(key, vals[key]); } return elem; } function minichat_selectchannel(chan) { var c=minichat_lastchan; if (minichat_selectedchan) { var d=document.getElementById('minichatdiv_'+minichat_selectedchan.id); d.style.display="none"; d=document.getElementById('minichata_'+minichat_selectedchan.id); d.setAttribute('class', 'minichata_unselected'); minichat_selectedchan=null; } while(c) { if (c.name == chan) { var d=document.getElementById('minichatdiv_'+c.id); d.style.display=""; d=document.getElementById('minichata_'+c.id); d.setAttribute('class', 'minichata_selected'); minichat_selectedchan=c; } c=c.prv; } document.getElementById('minichat').scrollTop=99999; } function minichat_addchannel(chan) { var c={ prv : null, nxt : null, name : chan, id: minichat_bigid++, lastid: 0 }; c.prv=minichat_lastchan; if (minichat_lastchan) minichat_lastchan.nxt=c; minichat_lastchan=c; if (!minichat_firstchan) minichat_firstchan=c; var d=minichat_newelem("div", { 'id' : 'minichatdiv_'+c.id , 'class' : 'minichatdiv' }); document.getElementById('minichat').appendChild(d); d=minichat_newelem("a", { 'id' : 'minichata_'+c.id, 'class' : 'minichata_unselected', 'href' : "javascript: minichat_selectchannel('"+c.name+"');" }); d.innerHTML=c.name; document.getElementById('minichatchans').appendChild(d); minichat_selectchannel(chan); } function minichat_removechannel(chan) { var c=minichat_lastchan; var found=null; while(c) { if (c.name == chan) { found=c; if (minichat_firstchan==c) minichat_firstchan=c.nxt; if (minichat_lastchan==c) minichat_lastchan=c.prv; if (c.prv) c.prv.nxt=c.nxt; if (c.nxt) c.nxt.prv=c.prv; var d=document.getElementById('minichatdiv_'+c.id); document.getElementById('minichat').removeChild(d); d=document.getElementById('minichata_'+c.id); document.getElementById('minichatchans').removeChild(d); break; } c=c.prv; } if (found == minichat_selectedchan) { minichat_selectedchan=null; if (found.prv) minichat_selectchannel(found.prv.name); else if (minichat_lastchan) minichat_selectchannel(minichat_lastchan.name); } } function minichat_updatelastid(chan, lastid) { var c=minichat_lastchan; while(c) { if (c.name == chan) { c.lastid=lastid; } c=c.prv; } } function minichat_getchanid(chan) { var c=minichat_lastchan; while(c) { if (c.name == chan) { return c.id; } c=c.prv; } return null; } {/literal}{$jscode}{literal} setTimeout('minichat_update()', 20); </script> {/literal}