// 2005.10.22
// system variables
var bAuth = '0';
var regClassID = '';
var send_cache = new Array();
function check_browser()
{
var errm;
if (navigator.userAgent.indexOf('MSIE') == -1)
{ window.location.href = 'mz.asp';
return;
} else
{ if (typeof window.ScriptEngine == 'function')
send('Shell','root','.0.5.');
else
errm = 'This page requires MSIE version 5+.';
}
if (typeof errm != 'undefined')
document.body.innerHTML = errm;
}
var send_status = '';
var send_retID = '';
function send(procID_p, retID_p, option, cmd_p, data_p)
{
//
// filter
if (typeof retID_p == 'undefined') retID_p = '';
if (typeof data_p == 'undefined') data_p = '';
if (typeof cmd_p == 'undefined') cmd_p = '';
if (typeof option == 'undefined') option = '';
send_retID = retID_p
root_loading.style.left = document.body.scrollLeft +document.body.clientWidth -180 +'px';
root_loading.style.top = document.body.scrollTop +5 +'px';
//
// options
var retID_elem = document.all(retID_p)
if (option.indexOf('.2.') != -1) // hide, if it's open
{ try
{ if (retID_elem.all.tags('TABLE').length)
if (retID_elem.style.display != 'none')
{ retID_elem.style.display = 'none';
return;
}
} catch(e) { document.title = '.2.?'; }
}
if (option.indexOf('.1.') != -1) // use cache
{ try
{ if (retID_elem.all.tags('TABLE').length)
{ retID_elem.style.display = 'block';
return;
}
} catch(e) { document.title = '.1.?'; }
}
if (option.indexOf('.5.') != -1) // show Wait sign on retID (before .0.)
{ try
{ if (typeof retID_elem == 'object')
{ root_loading.style.left = sum_offsetLeft(retID_elem) +3 +'px';
root_loading.style.top = sum_offsetTop(retID_elem) +3 +'px';
}
} catch(e) { document.title = '.5.?'; }
}
if (option.indexOf('.0.') != -1) // display msg
{ try
{ window.focus();
retID_elem.style.display = 'block';
retID_elem.innerHTML = '
loading ...
';
} catch(e) { document.title = '.0.?'; }
}
if (option.indexOf('.3.') != -1) // erase and hide retID
{ try
{ window.focus();
retID_elem.innerHTML = '';
retID_elem.style.display = 'none';
} catch(e) { document.title = '.3.?'; }
}
if (option.indexOf('.4.') != -1) // waiting for reply
{ try
{ if (send_status == 'listening')
{ alert('Waiting for reply. Please wait.');
return;
}
} catch(e) { document.title = '.4.?'; }
}
//
// diagnose
try
{ root_errMsg.style.display = 'none';
if (document.title != document.domain)
{ if (document.title != '' && document.title.indexOf('dbg:') != 0)
data_p += xml_item('js_err', document.title);
document.title = document.domain;
}
if (js_err_txt != '')
{ data_p += xml_item('js_err_txt', js_err_txt);
js_err_txt = '';
}
data_p += xml_item('stat_text', window.defaultStatus);
data_p += xml_item('date_time', new Date());
} catch(e) { document.title = 'diag?'; }
//
// send
try
{ ifrm_shIO.document.body.innerHTML = 'listening';
} catch(e) {}
frm_post.procID.value = procID_p;
frm_post.cmd.value = cmd_p;
frm_post.retID.value = retID_p;
frm_post.data.value = ''+ data_p +'';
frm_post.submit();
clearTimeout(listen_timeout);
window.defaultStatus = 'Waiting for reply ...';
root_loading.style.display = 'inline';
send_status = 'listening';
listen();
}
var listen_tmr = 0;
var listen_timeout;
function listen()
{
// for IE5
try
{ if
( ifrm_shIO.document.readyState == 'complete' &&
ifrm_shIO.document.body.innerHTML == 'listening'
)
{ setTimeout('listen()', 10);
return;
}
} catch(e) {}
root_loading.innerHTML =
'loading ... '+ Math.floor(listen_tmr / 10) +'.'+
listen_tmr % 10 +' sec';
var done = false;
try
{ if (ifrm_shIO.document.readyState == 'complete')
{ done = true;
if (typeof ifrm_shIO.load != 'function')
{ var s = '';
try {
s = ifrm_shIO.document.body.innerText;
} catch(e) {}
alert('Server Error:\n\n'+ s);
}
}
} catch(e)
{ done = true;
alert(document.domain +' is not responding. Check your Internet '+
'connection and try again later.');
if (send_retID != '')
{ var retID_elem = document.all(send_retID)
if (retID_elem != null)
if (retID_elem.innerText == 'loading ...')
retID_elem.innerHTML = '';
}
}
if (done)
{ var sz = 0;
var rt = '';
try {
sz = ifrm_shIO.document.body.innerHTML.length;
} catch(e) {}
if (sz)
{ rt = 10 * sz / (listen_tmr + 3);
rt = Math.floor(rt / 1024) +'.'+ (rt % 1024 +'').substr(0,1);
rt = rt +'KB per second';
}
window.defaultStatus = 'complete '+
Math.floor(listen_tmr / 10) +'.'+
listen_tmr % 10 +' sec, '+ rt;
listen_tmr = 0;
send_status = 'complete';
setTimeout('root_loading.style.display=\'none\'', 150);
return;
}
listen_tmr++;
listen_timeout = setTimeout('listen()', 100);
}
function tree(cont, prop)
{
if (typeof cont != 'object') return;
if (typeof prop == 'undefined')
cont.style.display = (cont.style.display == 'none') ? 'inline' : 'none';
else
cont.style.display = prop;
}
function treemo(cont)
{
if (typeof cont != 'object') return;
cont.style.background = (event.type == 'mouseover') ? 'f0f0f0' : 'e0e0e0';
}
function cyr()
{
try
{ if (document.activeElement.className.indexOf('cyr') != -1)
{ div_sysCyr.style.left = document.body.scrollLeft +document.body.clientWidth -70 +'px';
div_sysCyr.style.top = document.body.scrollTop +5 +'px';
if (div_sysCyr.style.display == 'none')
{ div_sysCyr.style.display = 'inline';
if (!inp_sysCyrCB.checked)
inp_sysCyrCB.checked = true;
}
if (typeof event.srcElement.onkeypress != 'function')
event.srcElement.onkeypress = cyr;
} else
{ div_sysCyr.style.display = 'none';
return;
}
if (!inp_sysCyrCB.checked) return;
} catch (e)
{ document.title = e.description;
return;
}
if (event.type != 'keypress') return;
switch(String.fromCharCode(event.keyCode)) {
case '`': event.keyCode = '='.charCodeAt(0); break;
case '~': event.keyCode = '+'.charCodeAt(0); break;
case '1': event.keyCode = '¹'.charCodeAt(0); break;
case '!': event.keyCode = '1'.charCodeAt(0); break;
case '2': event.keyCode = '-'.charCodeAt(0); break;
case '@': event.keyCode = '2'.charCodeAt(0); break;
case '3': event.keyCode = '"'.charCodeAt(0); break;
case '#': event.keyCode = '3'.charCodeAt(0); break;
case '4': event.keyCode = '¥'.charCodeAt(0); break;
case '$': event.keyCode = '4'.charCodeAt(0); break;
case '5': event.keyCode = ':'.charCodeAt(0); break;
case '%': event.keyCode = '5'.charCodeAt(0); break;
case '6': event.keyCode = '.'.charCodeAt(0); break;
case '^': event.keyCode = '6'.charCodeAt(0); break;
case '7': event.keyCode = '_'.charCodeAt(0); break;
case '&': event.keyCode = '7'.charCodeAt(0); break;
case '8': event.keyCode = ','.charCodeAt(0); break;
case '*': event.keyCode = '8'.charCodeAt(0); break;
case '9': event.keyCode = '%'.charCodeAt(0); break;
case '(': event.keyCode = '9'.charCodeAt(0); break;
case '0': event.keyCode = '?'.charCodeAt(0); break;
case ')': event.keyCode = '0'.charCodeAt(0); break;
case '-': event.keyCode = 'å'.charCodeAt(0); break;
case '_': event.keyCode = 'Å'.charCodeAt(0); break;
case '=': event.keyCode = 'ù'.charCodeAt(0); break;
case '+': event.keyCode = 'Ù'.charCodeAt(0); break;
case 'q': event.keyCode = 'ô'.charCodeAt(0); break;
case 'Q': event.keyCode = 'Ô'.charCodeAt(0); break;
case 'w': event.keyCode = 'ö'.charCodeAt(0); break;
case 'W': event.keyCode = 'Ö'.charCodeAt(0); break;
case 'e': event.keyCode = 'ó'.charCodeAt(0); break;
case 'E': event.keyCode = 'Ó'.charCodeAt(0); break;
case 'r': event.keyCode = 'æ'.charCodeAt(0); break;
case 'R': event.keyCode = 'Æ'.charCodeAt(0); break;
case 't': event.keyCode = 'ý'.charCodeAt(0); break;
case 'T': event.keyCode = 'Ý'.charCodeAt(0); break;
case 'y': event.keyCode = 'í'.charCodeAt(0); break;
case 'Y': event.keyCode = 'Í'.charCodeAt(0); break;
case 'u': event.keyCode = 'ã'.charCodeAt(0); break;
case 'U': event.keyCode = 'Ã'.charCodeAt(0); break;
case 'i': event.keyCode = 'ø'.charCodeAt(0); break;
case 'I': event.keyCode = 'Ø'.charCodeAt(0); break;
case 'o': event.keyCode = 'v'.charCodeAt(0); break;
case 'O': event.keyCode = 'Y'.charCodeAt(0); break;
case 'p': event.keyCode = 'ç'.charCodeAt(0); break;
case 'P': event.keyCode = 'Ç'.charCodeAt(0); break;
case '[': event.keyCode = 'ê'.charCodeAt(0); break;
case '{': event.keyCode = 'Ê'.charCodeAt(0); break;
case ']': event.keyCode = 'ú'.charCodeAt(0); break;
case '}': event.keyCode = 'Ú'.charCodeAt(0); break;
case 'a': event.keyCode = 'é'.charCodeAt(0); break;
case 'A': event.keyCode = 'É'.charCodeAt(0); break;
case 's': event.keyCode = 'û'.charCodeAt(0); break;
case 'S': event.keyCode = 'Û'.charCodeAt(0); break;
case 'd': event.keyCode = 'á'.charCodeAt(0); break;
case 'D': event.keyCode = 'Á'.charCodeAt(0); break;
case 'f': event.keyCode = 'º'.charCodeAt(0); break;
case 'F': event.keyCode = 'ª'.charCodeAt(0); break;
case 'g': event.keyCode = 'à'.charCodeAt(0); break;
case 'G': event.keyCode = 'À'.charCodeAt(0); break;
case 'h': event.keyCode = 'õ'.charCodeAt(0); break;
case 'H': event.keyCode = 'Õ'.charCodeAt(0); break;
case 'j': event.keyCode = 'ð'.charCodeAt(0); break;
case 'J': event.keyCode = 'Ð'.charCodeAt(0); break;
case 'k': event.keyCode = 'î'.charCodeAt(0); break;
case 'K': event.keyCode = 'Î'.charCodeAt(0); break;
case 'l': event.keyCode = 'ë'.charCodeAt(0); break;
case 'L': event.keyCode = 'Ë'.charCodeAt(0); break;
case ';': event.keyCode = 'ä'.charCodeAt(0); break;
case ':': event.keyCode = 'Ä'.charCodeAt(0); break;
case '\'': event.keyCode = 'ï'.charCodeAt(0); break;
case '"': event.keyCode = 'Ï'.charCodeAt(0); break;
case 'z': event.keyCode = 'ÿ'.charCodeAt(0); break;
case 'Z': event.keyCode = 'ß'.charCodeAt(0); break;
case 'x': event.keyCode = '÷'.charCodeAt(0); break;
case 'X': event.keyCode = '×'.charCodeAt(0); break;
case 'c': event.keyCode = '¸'.charCodeAt(0); break;
case 'C': event.keyCode = '¨'.charCodeAt(0); break;
case 'v': event.keyCode = 'ñ'.charCodeAt(0); break;
case 'V': event.keyCode = 'Ñ'.charCodeAt(0); break;
case 'b': event.keyCode = 'ì'.charCodeAt(0); break;
case 'B': event.keyCode = 'Ì'.charCodeAt(0); break;
case 'n': event.keyCode = 'è'.charCodeAt(0); break;
case 'N': event.keyCode = 'È'.charCodeAt(0); break;
case 'm': event.keyCode = 'ò'.charCodeAt(0); break;
case 'M': event.keyCode = 'Ò'.charCodeAt(0); break;
case ',': event.keyCode = 'ü'.charCodeAt(0); break;
case '<': event.keyCode = 'Ü'.charCodeAt(0); break;
case '.': event.keyCode = 'â'.charCodeAt(0); break;
case '>': event.keyCode = 'Â'.charCodeAt(0); break;
case '/': event.keyCode = 'þ'.charCodeAt(0); break;
case '?': event.keyCode = 'Þ'.charCodeAt(0); break;
}
}
function xml_item(n, v)
{
v = v + '';
v = v.replace(/&/ig, '~amp;');
v = v.replace(/'/ig, '~apos;');
v = v.replace(/"/ig, '~quot;');
v = v.replace(//ig, '~gt;');
return '<'+ n +'>'+ v +''+ n +'>\n\r';
}
// 2006.1.7
function xml_safe(a)
{
a = a + '';
a = a.replace(/&/ig, '');
a = a.replace(//ig, '');
return a;
}
function copySel(src, desc)
{
if ((typeof src) +'.'+ (typeof desc) != 'object.object') return;
if (src.tagName +'.'+ desc.tagName != 'SELECT.SELECT') return;
desc.innerHTML = '';
while (src.options.length)
{ var opt = window.document.createElement('OPTION');
if (src[0].value != '')
opt.value = src[0].value;
opt.text = src[0].text;
desc.add(opt);
src.remove(0);
}
}
function selNew(elem)
{
if (typeof elem != 'object') return false;
if (elem.tagName != 'SELECT') return false;
if (elem.selectedIndex == -1) return false;
if (elem[elem.selectedIndex].value != 'new') return false;
return true;
}
function selClear(elem)
{
if (typeof elem != 'object') return;
if (elem.tagName != 'SELECT') return;
while (elem.options.length)
elem.remove(0);
}
function show_hide(elem)
{
if (typeof elem == 'string')
{ elem = document.all(elem);
if (elem == null) return false;
}
if (elem.style.display == 'none')
{ elem.style.display = 'inline';
return true;
} else
{ elem.style.display = 'none';
return false;
}
}
function root_xml_ready()
{
try
{ var xml_retID = root_xml.XMLDocument.selectSingleNode('data/retID')
if (xml_retID == null) return;
var elem = document.all(xml_retID.text);
if (elem == null) return;
var xml_data = root_xml.XMLDocument.selectSingleNode('data/default')
if (xml_data == null) return;
elem.innerHTML = xml_data.text;
} catch (e) {}
}
var root_xml_state_cnt = 0;
function root_xml_state()
{
try
{
if (root_xml.readyState.indexOf('load') == 0) return;
if (root_xml.readyState == 'complete')
{ if (!root_xml_state_cnt) return;
window.defaultStatus = 'Complete '+ (root_xml_state_cnt /10) +' sec';
var xml_err = root_xml.XMLDocument.parseError;
if (xml_err.errorCode != 0)
window.defaultStatus = 'XML Error: '+ xml_err.reason;
root_xml_state_cnt = 0;
root_xml_ready();
return;
}
window.defaultStatus = 'Loading XML ... '+ (root_xml_state_cnt /10) + ' sec';
if (root_xml_state_cnt > 160)
{ window.defaultStatus = 'Connection failed. Check your Internet connection.';
root_xml_state_cnt = 0;
return;
}
root_xml_state_cnt++;
setTimeout('root_xml_state()', 100);
} catch (e) {}
}
function getXML(s)
{
try { event.srcElement.blur(); }
catch (e) {}
root_xml.src = 'xml.asp?'+ s;
}
var sel_zoom_elem;
var sel_zoom_size;
function sel_zoom(elem, elem_size)
{
//if (navigator.userAgent.indexOf('MSIE 5') != -1)
//{ elem.size = elem_size;
// return;
//}
if (typeof elem == 'object')
{ sel_zoom_elem = elem;
sel_zoom_size = elem_size;
}
if (sel_zoom_elem.size == sel_zoom_size)
return;
if (sel_zoom_elem.size < sel_zoom_size)
sel_zoom_elem.size++;
else
sel_zoom_elem.size--;
setTimeout('sel_zoom()', 1);
}
function sel_visib(arg)
{
var coll = document.all.tags('SELECT');
for (i=0; i'+ id +'';
sh_absCont.innerHTML = (typeof e == 'object') ? e.innerHTML : e;
}
if (typeof w != 'number') w = 300;
if (typeof h != 'number') h = 200;
sh_abs.style.width = w +'px';
sh_abs.style.height = h +'px';
var x = (document.body.clientWidth / 2) - (w / 2);
var y = (document.body.clientHeight / 2) - (h / 2);
if (y > 100) y -= 32;
sh_abs.style.left = document.body.scrollLeft + Math.floor(x);
sh_abs.style.top = document.body.scrollTop + Math.floor(y);
sh_abs.style.display = 'block';
sel_visib(false);
}
function clear_elem(elem, opt)
{
if (typeof elem == 'string')
{ elem = document.all(elem);
if (elem == null) return;
}
if (typeof elem != 'object') return;
if (!can_close(elem)) return;
if (opt.indexOf('.0.') != -1)
{ window.focus();
elem.innerHTML = '';
}
if (opt.indexOf('.1.') != -1) // hide container
elem.style.display = 'none';
}
// 2006.1.3
var scroll_doc_mode;
var scroll_doc_num;
function scroll_doc(mode, num)
{
if (typeof mode != 'undefined')
{ if (typeof num != 'number')
{ num = sum_offsetTop(num);
if (num == null) return;
}
with(document.body)
{ if (clientHeight + num > scrollHeight)
return;
}
} else
{ mode = scroll_doc_mode;
num = scroll_doc_num;
if (mode == null) return;
}
switch(mode) {
case 'abs': break;
case 'rel':
num = document.body.scrollTop + num;
mode = 'abs';
break;
default: return;
}
var dist = document.body.scrollTop - num
if (dist < 0) dist = -dist;
if (!dist)
{ scroll_doc_mode = null;
scroll_doc_num = null;
return;
}
var step = 25;
if (dist < 90) step = 20
if (dist < 70) step = 15
if (dist < 50) step = 10
if (dist < 30) step = 5
if (dist < 10) step = 1
var prev = document.body.scrollTop;
document.body.scrollTop += (document.body.scrollTop > num) ? -step : step;
if (prev == document.body.scrollTop) return;
scroll_doc_mode = mode;
scroll_doc_num = num;
setTimeout('scroll_doc()', 1);
}
// 2006.1.3
function sum_offsetTop(elem)
{
try
{ if (event.srcElement.tagName == 'BUTTON')
event.srcElement.blur();
} catch(e) {}
if (typeof elem == 'string')
elem = document.all(elem);
if (elem == null) return null;
if (typeof elem != 'object') return null;
if (elem.tagName == 'BODY') return 0;
var r = elem.offsetTop;
while(true)
{ elem = elem.offsetParent;
if (elem.tagName == 'BODY') break;
r += elem.offsetTop;
}
return r;
}
// 2006.1.6
function sum_offsetLeft(elem)
{
if (typeof elem == 'string')
elem = document.all(elem);
if (elem == null) return null;
if (typeof elem != 'object') return null;
if (elem.tagName == 'BODY') return 0;
var r = elem.offsetLeft;
while(true)
{ elem = elem.offsetParent;
if (elem.tagName == 'BODY') break;
r += elem.offsetLeft;
}
return r;
}
// 2006.1.3
function scroll_show(elem, h)
{
if (typeof elem == 'string')
{ elem = document.all(elem);
if (elem == null) return;
}
var p = sum_offsetTop(elem);
var b = document.body.scrollTop + document.body.clientHeight - h;
if (p > b)
scroll_doc('rel', p - b);
else
{ if (document.body.scrollTop > p)
scroll_doc('rel', p - document.body.scrollTop - 32);
}
}
// 2006.1.4
function can_close(elem)
{
try
{ if (event.srcElement.tagName == 'BUTTON')
event.srcElement.blur();
} catch(e) {}
if (send_status == 'listening')
{ alert('Waiting for reply. Please wait.');
return false;
}
return true;
}
// 2006.1.4
function num_val(arg)
{
if (typeof arg != 'string') return 0;
if (!arg.length) return 0;
return parseInt(arg);
}
// 2006.1.6
var js_err_txt = '';
function js_err(msg, url, line)
{
js_err_txt = msg +'\n'+ url +'\n'+ line;
return false;
}
// 2006.1.8
function show_msg(msg)
{
if (msg == '')
{ sh_msg.style.display = 'none';
return;
}
sh_msg.style.left = document.body.scrollLeft +5;
sh_msg.style.top = document.body.scrollTop +5;
sh_msg.innerHTML = msg;
sh_msg.style.display = 'block';
}
// 2006.1.9
function show_msg_um(msg, w, h)
{
if (msg == '')
{ sh_msg.style.display = 'none';
return;
}
if (typeof w != 'number') w = 200;
if (typeof h != 'number') h = 100;
var x, y;
x = event.clientX + document.body.scrollLeft;
y = event.clientY + document.body.scrollTop;
if (event.clientX + w > document.body.clientWidth) x -= w + 10;
if (event.clientY + h > document.body.clientHeight) y -= h + 10;
sh_msg.style.left = x +10 +'px';
sh_msg.style.top = y +10 +'px';
sh_msg.innerHTML = msg;
sh_msg.style.display = 'block';
}
window.onerror = js_err;