diff options
author | Tom Kistner <tom@duncanthrax.net> | 2008-12-04 11:24:17 +0100 |
---|---|---|
committer | Andreas Unterkircher <unki@netshadow.at> | 2008-12-12 23:18:56 +0100 |
commit | f8a8bc98f9a77d24e0fce2abd73c9512bcf26f2d (patch) | |
tree | 84af841fdb450b60d54e590ec02b9ddb0e671cba /htdocs | |
parent | a35e1469841bfbc7e58b66dcefb108993bc4b494 (diff) | |
download | exilog-f8a8bc98f9a77d24e0fce2abd73c9512bcf26f2d.zip exilog-f8a8bc98f9a77d24e0fce2abd73c9512bcf26f2d.tar.gz exilog-f8a8bc98f9a77d24e0fce2abd73c9512bcf26f2d.tar.bz2 |
Forward unreleased changes
- IPv6 address parsing
- Some queue management
- Better SQL quoting
- More misc stuff
Signed-off-by: Tom Kistner <tom@duncanthrax.net>
Diffstat (limited to 'htdocs')
-rw-r--r-- | htdocs/exilog_jscript.js | 111 | ||||
-rw-r--r-- | htdocs/exilog_stylesheet.css | 31 |
2 files changed, 129 insertions, 13 deletions
diff --git a/htdocs/exilog_jscript.js b/htdocs/exilog_jscript.js index 01aaf52..e08d79d 100644 --- a/htdocs/exilog_jscript.js +++ b/htdocs/exilog_jscript.js @@ -1,3 +1,43 @@ +// ******************************************************************** +// XMLHTTP stuff + +var xmlhttp=false; +/*@cc_on @*/ +/*@if (@_jscript_version >= 5) +// JScript gives us Conditional compilation, we can cope with old IE versions. +// and security blocked creation of the objects. + try { + xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); +} catch (e) { + try { + xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); +} catch (E) { + xmlhttp = false; +} +} +@end @*/ +if (!xmlhttp && typeof XMLHttpRequest!='undefined') { + xmlhttp = new XMLHttpRequest(); +} + +var xmlhttpparent; +function message_action(myserver,mymsgid,mycontrol,myparent) { + xmlhttpparent = myparent; + var myaction = mycontrol.options[mycontrol.selectedIndex].value; + if (myaction.length < 2) return; + xmlhttp.open("GET", "?xmlhttp=1&action="+myaction+"&server="+myserver+"&message_id="+mymsgid,true); + xmlhttp.onreadystatechange=function() { + if (xmlhttp.readyState==4) { + document.getElementById(xmlhttpparent).innerHTML = xmlhttp.responseText; + } + } + xmlhttp.send(null) +} + + +// ******************************************************************** +// Some generic functions used across the interface + function set_value(myobj,myvalue) { document.getElementById(myobj).value = myvalue; }; @@ -16,6 +56,10 @@ function link_off(myobj) { myobj.style.background = myobj.id; }; + +// ******************************************************************** +// JS Code for the picker controls on the "Messages" and "Queues" tabs + var my_controls = new Object; my_controls['term'] = new Object; my_controls['events'] = new Object; @@ -77,9 +121,12 @@ function switch_controls(myselection) { } }; -function check_group(group) -{ - var j, c=document.forms[0].elements, s=c.length; + +// ================================================================== +// "Messages" tab specific +// +function check_group(group) { + var j, c=document.forms[0].elements, s=c.length; for( j=0 ; j<s ; j++ ) { if (c[j].name == "sr") if( c[j].id == group ) @@ -127,8 +174,63 @@ function sr_changed() { }; +// ================================================================== +// "Queues" tab specific +// +function q_check_group(group) { + var j, c=document.forms[0].elements, s=c.length; + for( j=0 ; j<s ; j++ ) { + if (c[j].name == "q_sr") + if( c[j].id == group ) + c[j].checked = true; + else + c[j].checked = false; + }; +} + +function q_ss_changed() { + if (document.getElementById('q_ss').selectedIndex == 0) { + // "all" was selected, select all + var j, c=document.forms[0].elements, s=c.length; + for( j=0 ; j<s ; j++ ) + if (c[j].name == "q_sr") c[j].checked = true; + } + else if (document.getElementById('q_ss').selectedIndex == 1) { + // "custom" was selected, blank all + var j, c=document.forms[0].elements, s=c.length; + for( j=0 ; j<s ; j++ ) + if (c[j].name == "q_sr") c[j].checked = false; + } + else { + var group = document.getElementById('q_ss').options[document.getElementById('q_ss').selectedIndex].value; + q_check_group(group); + }; +}; + +function q_sr_off_except(myobj) { + var j, c=document.forms[0].elements, s=c.length; + for( j=0 ; j<s ; j++ ) + if (c[j].name == "q_sr") c[j].checked = false; + myobj.checked = true; +}; + +function q_qw_off_except(myobj) { + var j, c=document.forms[0].elements, s=c.length; + for( j=0 ; j<s ; j++ ) + if (c[j].name == "q_qw") c[j].checked = false; + myobj.checked = true; +}; + +function q_sr_changed() { + document.getElementById('q_ss').selectedIndex = 1; +}; + + +// ****************************************************************** +// JS Code for the Date picker control +// // =================================================================== // Author: Matt Kruse <matt@mattkruse.com> @@ -1227,6 +1329,3 @@ function CP_getCalendar() { return result; } - -var cal1x = new CalendarPopup("caldiv1x"); -var cal2x = new CalendarPopup("caldiv2x"); diff --git a/htdocs/exilog_stylesheet.css b/htdocs/exilog_stylesheet.css index f50ec95..e315446 100644 --- a/htdocs/exilog_stylesheet.css +++ b/htdocs/exilog_stylesheet.css @@ -91,9 +91,15 @@ select { font-size: 10px; } -table.queue_table { - background: black; +table.queue_frame_table { + border: 0; + font-size: 12px; +} +table.queue_entry_table { + background: #999999; + margin-bottom: 8px; font-size: 12px; + width: 926px; } td.queue_header { background: #cccccc; @@ -104,15 +110,26 @@ td.queue { background: #eeeeee; white-space: nowrap; padding: 2px 4px 2px 4px; + font-family: monospace; +} + +div.popup_container { + position: relative; + width:0px; + height:0px; + border:0; + margin:0; + padding:0; } -div.rcpts_pending_popup { +div.popup { position: absolute; visibility: hidden; - background: #dddddd; + background: #eeeeee; + top: -3px; + left: -5px; color: black; - padding: 4px; - border: 1px solid black; - width: 100px; + padding: 2px 4px 2px 4px; + border: 1px solid #999999; } td.table_titlebar { |