diff --git a/html/include/focus.js b/html/include/focus.js
index 00ae1bb9a5dd47ba072c9514516a647cf67720f1..99e73b14c1c847d0f97eeab6b77ee34b569f6f8b 100644 (file)
--- a/html/include/focus.js
+++ b/html/include/focus.js
var browserType;
+var timeout;
if (document.layers) {browserType = "nn4"}
if (document.all) {browserType = "ie"}
}
netscape= (ver.charAt(iln+1).toUpperCase() != "C");
+function toggle_all_(regex,state_object)
+{
+ state = document.getElementById(state_object).checked;
+ chk_set_all(regex, state);
+}
+
+
+/* Toggle checkbox that matches regex */
+function chk_set_all(regex,value)
+{
+ for (var i = 0; i < document.mainform.elements.length; i++) {
+ var _id=document.mainform.elements[i].id;
+ if(_id.match(regex)) {
+ document.getElementById(_id).checked= value;
+ }
+ }
+}
+
+
+function scrollDown() {
+ document.body.scrollTop = document.body.scrollHeight - document.body.clientHeight;
+ timeout= setTimeout("scrollDown()", 500);
+}
+
+/* Scroll down the body frame */
+function scrollDown2()
+{
+ document.body.scrollTop = document.body.scrollHeight - document.body.clientHeight;
+}
+
function keyPress(DnEvents) {
// determines whether Netscape or Internet Explorer
form.javascript.value = 'true';
}
-window.onload = adjust_width;
-window.onresize = adjust_width;
-window.onload = adjust_height;
-window.onresize = adjust_height;
+window.onload = adjust;
+window.onresize = adjust;
+
+function adjust (e) {
+ adjust_height(e);
+ adjust_width(e);
+}
// Automatic resize (height) of divlists
function adjust_height(e) {
suggested= inner_height-230;
}
- } else if(px_height >= 450) {
- suggested= px_height-230;
+ // IE uses other height specifications
+ } else if (browserType == "ie") {
+ suggested= document.all.menucell.offsetHeight;
+ offset= absTop(d_scrollbody);
+ suggested-= offset;
+ if((inner_height-230)-suggested>0) {
+ suggested= inner_height-230;
+ }
}
document.getElementById("d_scrollbody").style.height=suggested+"px";
}
return true;
}
+function absTop(e) {
+ return (e.offsetParent)?e.offsetTop+absTop(e.offsetParent) : e.offsetTop;
+}
+
// Automatic resize (width) of divlists
function adjust_width(e) {
if (!e) e=window.event;
// Resize the Header cells (only the relative-width ones)
document.getElementById('t_scrollhead').style.width=div_width+"px";
}
+ } else if(document.defaultView && document.getElementById("t_scrolltable_onlywidth")) {
+ // Resize the div
+ var div_width=parseInt(document.defaultView.getComputedStyle(document.getElementById("t_scrolltable_onlywidth"),"").getPropertyValue('width'));
+ var width= parseInt(window.innerWidth);
+
+ // Resize the body cells
+ var diff= width-div_width-470;
+
+ // window has been upscaled
+ if(div_width+diff>=600) {
+ document.getElementById('d_scrollbody_onlywidth').style.width=div_width+diff+"px";
+ document.getElementById('t_scrollbody_onlywidth').style.width=(div_width-19)+diff+"px";
+
+ // Resize the Header cells (only the relative-width ones)
+ document.getElementById('t_scrollhead_onlywidth').style.width=div_width+diff+"px";
+
+ // window has been downscaled, we must reset the div to 600px
+ } else if (width < 930) {
+ // Reset layout (set width to 600px)
+ div_width=600;
+ document.getElementById('d_scrollbody_onlywidth').style.width=div_width+"px";
+ document.getElementById('t_scrollbody_onlywidth').style.width=(div_width-19)+"px";
+
+ // Resize the Header cells (only the relative-width ones)
+ document.getElementById('t_scrollhead_onlywidth').style.width=div_width+"px";
+ }
} else {
// IE
}
}
+
+
+/* Set focus to first valid input field
+ avoid IExplorer warning about hidding or disabled fields
+*/
+function focus_field()
+{
+ var i = 0;
+ while(focus_field.arguments[i] && document.getElementById(focus_field.arguments[i]).disabled == true) {
+ i++;
+ }
+ if(focus_field.arguments[i]){
+
+ var name = focus_field.arguments[i];
+ var element = document.getElementsByName(name);
+
+ for(i = 0; i < element.length; i++) {
+ if(element[i].id == name && (
+ element[i].type != 'none' ||
+ element[i].type != 'hidden')
+ ) {
+ element[i].blur();
+ element[i].focus();
+ break;
+ }
+ }
+ }
+}
+
+
+
+
+
// vim:ts=2:syntax