var common={
fillForm: function(formName,values){
//alert(HTML_AJAX_Util.varDump(values));
var myNodes=null;
for(prop in values){
if(document.forms[formName][prop]){
if(document.forms[formName][prop].type=='select-multiple'){
for(i=0;i
document.forms[formName][prop].options[i].selected=false;
for(j in values[prop]){
if(document.forms[formName][prop].options[i].value == values[prop][j]){
document.forms[formName][prop].options[i].selected=true;
continue;
}
}
}
continue;
}
if(document.forms[formName][prop].type=='checkbox'){
if(values[prop]>0){
document.forms[formName][prop].checked=true;
}else{
document.forms[formName][prop].checked=false;
}
}
document.forms[formName][prop].value=values[prop];
}
else{
if(document.forms[formName][prop+'[]'] && values[prop].length){
myNodes=document.forms[formName][prop+'[]'];
for(i=0;i
if(myNodes[i].type=='checkbox'){
for(j=0;j
if(myNodes[i].value==values[prop][j]){ myNodes[i].checked=true; }
}
}
}
}
}
}
},
disableFields: function(formName,fields){
for(i in fields){
if(document.forms[formName][fields[i]]){
document.forms[formName][fields[i]].disabled=true;
}
}
},
hide:function(id){
if(document.getElementById(id)){
document.getElementById(id).style.display='none';
}
},
show:function(id,type){
if(type==undefined) type='block';
if(document.getElementById(id)){
document.getElementById(id).style.display=type;
}
},
setVisibility:function(visible,targetId,type,invert){
if(invert!=undefined) visible=!visible;
if(visible){
common.show(targetId,type);
}else{
common.hide(targetId);
}
},
showFromGroup:function(groupName,targetId){
var divs=document.getElementsByTagName('div');
for(i in divs){
if(divs[i].attributes){
var relAttribute = String(divs[i].getAttribute('rel'));
if(relAttribute==groupName){
divs[i].style.display='none';
}
}
}
common.show(targetId);
},
rand:function( min, max ) {
// http://kevin.vanzonneveld.net
// + original by: Leslie Hoare
// * example 1: rand(1, 1);
// * returns 1: 1
if( max ) {
return Math.floor(Math.random() * (max - min + 1)) + min;
} else {
return Math.floor(Math.random() * (min + 1));
}
},
ajaxRequestsCount:0,
createPendingRequest:function(msg,submit,reset){
var requestId=common.ajaxRequestsCount++;
var myNode=document.getElementById('ajaxTasksContent');
var newNode=document.createElement('div');
newNode.innerHTML=msg;
newNode.setAttribute('id','ajaxRequest_'+requestId);
newNode.setAttribute('class','pendingRequest');
if(myNode.childNodes.length){
myNode.insertBefore(newNode,myNode.childNodes[0]);
}else{
myNode.appendChild(newNode);
}
if(submit!=undefined && (submitButton=document.getElementById(submit))){
var submitCache=document.createElement('input');
submitCache.setAttribute('id','ajaxSubmit_'+requestId);
submitCache.setAttribute('type','hidden');
submitCache.setAttribute('value',submit+'__'+submitButton.value);
myNode.appendChild(submitCache);
submitButton.setAttribute('value','Operation in progress..');
submitButton.disabled=true;
}
if(reset!=undefined && (resetButton=document.getElementById(reset))){
var resetCache=document.createElement('input');
resetCache.setAttribute('id','ajaxReset_'+requestId);
resetCache.setAttribute('type','hidden');
resetCache.setAttribute('value',reset);
myNode.appendChild(resetCache);
resetButton.style.display='none';
}
return requestId;
},
requestFinished:function(requestId,msg){
var myNode=document.getElementById('ajaxRequest_'+requestId);
myNode.innerHTML=msg;
myNode.setAttribute('class','finishedRequest');
if(submitCache=document.getElementById('ajaxSubmit_'+requestId)){
var tmp=submitCache.value;
var sepPos=tmp.indexOf('__');
var submitId=tmp.substr(0,sepPos);
var submitValue=tmp.substr(sepPos+2);
document.getElementById(submitId).value=submitValue;
document.getElementById(submitId).disabled=false;
}
if(resetCache=document.getElementById('ajaxReset_'+requestId)){
document.getElementById(resetCache.value).style.display='inline';
}
},
checkAll:function(myNode,targetNode){
//var myNode=document.getElementById('checkboxAll');
//var checkBoxes=myNode.parentNode.parentNode.getElementsByTagName('input');
var checkBoxes=targetNode.getElementsByTagName('input');
for(var i=0;i
checkBoxes[i].checked=myNode.checked;
}
},
showActions:function(){
if(document.getElementById('actions')){
common.hideSelectBoxes();
document.getElementById('actions').style.display='block';
document.getElementById('actions').style.top=(document.documentElement.scrollTop+50)+"px";
document.body.style.backgroundColor="#999999";
// document.getElementById('footer').style.backgroundColor="#999999";
document.getElementById('actionsBg').style.display='block';
}
},
hideActions:function(){
if(typeof uUpload != 'undefined'){
if(uUpload.checkFileAvailable()){
if(confirm('There are files choosen for upload!\n\nWould you like to upload them?')){
uUpload.linkUpload(true);
return false;
}
}
}
if(document.getElementById('actions')){
document.getElementById('actions').style.display='none';
document.getElementById('actions').innerHTML='';
document.getElementById('actionsBg').style.display='none';
document.body.style.backgroundColor="#ffffff";
document.getElementById('footer').style.backgroundColor="#ffffff";
if(window.editor) editor.cancel();
common.showSelectBoxes();
}
},
showView:function(formName,formId){
document.getElementById('viewClose').style.top=(document.documentElement.scrollTop+30)+"px";
document.getElementById('viewClose').style.display='block';
document.getElementById('viewHover').style.height=(document.documentElement.scrollHeight)+"px";
document.getElementById('viewHover').style.display='block';
document.forms[formName].onsubmit=function(){return false;}
var inputs=document.getElementById(formId).getElementsByTagName('input');
for(var i=0;i
if(inputs[i].type!=undefined && inputs[i].type=='submit') inputs[i].parentNode.removeChild(inputs[i]);
}
},
hideView:function(){
document.getElementById('viewClose').style.display='none';
document.getElementById('viewHover').style.display='none';
common.hideActions();
},
addEvent:function(obj, evType, fn) {
if (obj.addEventListener) {
obj.addEventListener(evType, fn, false);
return true;
} else if (obj.attachEvent) {
var r = obj.attachEvent("on"+evType, fn);
return r;
} else {
return false;
}
},
realPos:function(obj){
var curleft = curtop = 0;
if (obj.offsetParent) {
do {
curleft += obj.offsetLeft;
curtop += obj.offsetTop;
} while (obj = obj.offsetParent);
}
return [curleft,curtop];
},
showSelectBoxes:function(){
if(document.getElementById('filters')){
var selects = document.getElementById('filters').getElementsByTagName("select");
for (i = 0; i != selects.length; i++) {
selects[i].style.visibility = "visible";
}
}
},
hideSelectBoxes:function(){
if(document.getElementById('filters')){
var selects = document.getElementById('filters').getElementsByTagName("select");
for (i = 0; i != selects.length; i++) {
selects[i].style.visibility = "hidden";
}
}
},
findParentNodeByClassName:function(className,node) {
while(!HTML_AJAX_Util.hasClass(node, className)) {
node = node.parentNode;
}
return node;
},
getElementsByClassName:function(searchClass,node,tag) {
var classElements = new Array();
if ( node == null )
node = document;
if ( tag == null )
tag = '*';
var els = node.getElementsByTagName(tag);
var elsLen = els.length;
var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
for (i = 0, j = 0; i < elsLen; i++) { //>
if ( pattern.test(els[i].className) ) {
classElements[j] = els[i];
j++;
}
}
return classElements;
}
}