// ----------------------------------
// Javascript File: IniCom.Networks
// ----------------------------------

// Select All Items on a Form
function selectAllItems(obj, frmname, strstart) {
 var frm=eval("document."+frmname);
 for(j = 0; j < frm.elements.length; j++) {
  if (frm.elements[j].name.substr(0,6)==strstart) { frm.elements[j].checked = obj.checked; }
 }
}

// Column Toggle Script
var showMode = 'table-cell';
// Hack to prevent Opera using the IE display mode.
if ((navigator.appName.indexOf("Microsoft") != -1) && (navigator.userAgent.indexOf("Opera") == -1)) {
 if (document.all) showMode='block';
}
function ToggleVis(btn) {
 try {
  var cells = document.getElementsByName('T'+btn.name);
  var mode = btn.checked ? showMode : 'none';
  for(j = 0; j < cells.length; j++) { cells[j].style.display = mode; }
  var objData=document.getElementById('colData');
  var colNum=btn.name.substr(3);
  var colValue = btn.checked ? '1' : '0';
  var txt=objData.value.substr(0,eval(colNum)-1)+colValue+objData.value.substr(eval(colNum));
  objData.value=txt;
 } catch(e) { alert("Error occured: "+e.description); }
}
function InitVis() {
 try {
  var objData=document.getElementById('colData');
  for (i = 0; i < objData.value.length -1; i++) {
   objCol=document.getElementById('col'+eval(i+1)); objCol.checked=objData.value.substr(i,1)=='1'; ToggleVis(objCol);
  }
 } catch(e) { alert("Error occured: "+e.description); }
}
function GetVisData() { try {return(document.getElementById('colData').value);} catch(e){alert("Error occured: "+e.description);}; }

// TR Hover Script
function trHover(obj,newcolor) { obj.oldColor=obj.bgColor; obj.bgColor=newcolor; }
function trOut(obj) { obj.bgColor=obj.oldColor; }

// Collapse Script
function tglPic(obj) { try{if(obj.src.lastIndexOf("+.")!=-1){obj.src=obj.src.replace('+.','-.');}else{obj.src=obj.src.replace('-.','+.');}}catch(e){}; }
function tglRow(event,picname) { try{tglPic(document.getElementById(picname));tglCase(event,document.getElementById(picname));}catch(e){}; }
function tglCase(event,obj) { try{child=document.getElementById(obj.id.replace("exImage","exData"));child.className=child.className=="collapsed" ? "expanded" : "collapsed";}catch(e){}; tglStop(event); }
function tglStop(event) { try{event.cancelBubble=true;}catch(e){}; try{event.stopPropagation;}catch(e){}; }

// Toggle Classes
function tglClassIn(obj,newClass) { try { obj.oldClass=obj.className; obj.className=newClass; } catch(e) {}; }
function tglClassOut(obj)         { try { obj.className=obj.oldClass; } catch(e) {}; }

// Abrir nueva ventana
function opX(theURL,winName,features) { window.open(theURL,winName,features); }

// Handle all the FSCommand messages in a Flash movie.
var isInternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
function top1x3_DoFSCommand(command, args) {
 var top1x3Obj = isInternetExplorer ? document.all.top1x3 : document.top1x3;
 if (command=='ChangeLang') {
  // We dont have langs yet, so just comment this so the links take no action.
  // document.location.href=('/pages/_swlang.php?url='+document.location.href.replace("&","!-!").replace("?","*-*")+'&to='+args);
 }
}

function clURL(args) {
 // We dont have langs yet, so just comment this so the links take no action.
 // document.location.href=('/pages/_swlang.php?url='+document.location.href.replace("&","!-!").replace("?","*-*")+'&to='+args);
}

// Hook for Internet Explorer.
if (navigator.appName && navigator.appName.indexOf("Microsoft") != -1 && navigator.userAgent.indexOf("Windows") != -1 && navigator.userAgent.indexOf("Windows 3.1") == -1) { document.write('<script language=\"VBScript\"\>\nOn Error Resume Next\nSub top1x3_FSCommand(ByVal command, ByVal args)\nCall top1x3_DoFSCommand(command, args)\nEnd Sub\n</script\>\n'); }

function DoAsk(tourl,question) { if(confirm(question)==true){document.location.href=(tourl);} }

// Separador de Texto
function stX(Texto,Espacio) {
 if (Espacio == null) { Espacio = 0 };
 if (Espacio >= 9) { Espacio = 9 };
 if (Texto == null) { Text = "" };
 var textoX = Texto + "," + Espacio;
 window.status=separa(textoX);
}
function separa(textoX) {
 var count=textoX.length; var texto=textoX.substr(0,count-2); var cant=textoX.substr(count-1,1); var texto2=""; var nbsp="";
 if (cant==null) { cant=0; }
 for (i = 0; i < cant; i++) { nbsp+=" " }
 if (texto!=null) { var count = texto.length; for (i = 0; i < count; i++) { texto2+=texto.charAt(i)+nbsp } return texto2; }
}

function picwin(url, ww, hh) {
 var nap = navigator.appName;
 if (nap.indexOf("Netscape") > -1) {loadIntoNS(url, ww, hh); return;}
 var wd = (screen.width - ww) /2;
 var ht = (screen.height - hh) /2;
 var title = "Click Image to Close Window";
 for (i=0; i<300; i++) title = title + "&nbsp;";
 win = window.open('', 'win', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no,width='+ww+',height='+hh+',left='+wd+',top='+ht);
 win.document.write('<HTML><TITLE>'+title+'</TITLE><BODY LEFTMARGIN=0 TOPMARGIN=0>');
 win.document.write('<IMG SRC="' +url+ '" WIDTH=' +ww+ ' HEIGHT=' +hh+ ' ALT="Click image to close window" ONCLICK="javascript:window.close();return true" STYLE="cursor: hand">');
 win.document.write('</BODY></HTML>');
 return;
}

function loadIntoNS(url, ww, hh) {
 ww++; ww+=10;
 hh++; hh+=10;
 var wd = (screen.width - ww) /2;
 var ht = (screen.height - hh) /2;
 if (parseFloat(navigator.appVersion) > 4) { ww+=7; hh+=7; }
 win = window.open(url, 'win', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no,width='+ww+',height='+hh+',left='+wd+',top='+ht);
 return;
}


////////////////////
//// global.js
////////////////////

function cartForm(actionVar, iid){
	if (actionVar == "update"){
		document.cartform.action = "https://secure.flashfxp.com/cart/cart.php?Action=update&return=1";
	}
	if (actionVar == "delete"){
		document.cartform.action = "https://secure.flashfxp.com/cart/cart.php?Action=delete&return=1";
	}
	if (actionVar == "deleteone"){
		document.cartform.action = "https://secure.flashfxp.com/cart/cart.php?Action=deleteone&return=1&iid="+iid;
	}
	document.cartform.submit();
}
  
var newWin = null;  
function popUp(strURL, strType, strHeight, strWidth) {  
 if (newWin != null && !newWin.closed)  
   newWin.close();  
 var strOptions="";  
 if (strType=="console")  
   strOptions="resizable,height="+  
     strHeight+",width="+strWidth;  
 if (strType=="fixed")  
   strOptions="status,height="+  
     strHeight+",width="+strWidth;  
 if (strType=="elastic")  
   strOptions="toolbar,menubar,scrollbars,"+  
     "resizable,location,height="+  
     strHeight+",width="+strWidth;  
 newWin = window.open(strURL, 'newWin', strOptions);  
 newWin.focus();  
}

////////////////////
//// js-validator.js
////////////////////

function trim(inputString) {
 // Removes leading and trailing spaces from the passed string. Also removes
 // consecutive spaces and replaces it with one space. If something besides
 // a string is passed in (null, custom object, etc.) then return the input.
 if (typeof inputString != "string") { return inputString; }
 var retValue = inputString;
 var ch = retValue.substring(0, 1);
 while (ch == " ") { // Check for spaces at the beginning of the string
  retValue = retValue.substring(1, retValue.length);
  ch = retValue.substring(0, 1);
 }
 ch = retValue.substring(retValue.length-1, retValue.length);
 while (ch == " ") { // Check for spaces at the end of the string
  retValue = retValue.substring(0, retValue.length-1);
  ch = retValue.substring(retValue.length-1, retValue.length);
 }
 while (retValue.indexOf("  ") != -1) { // Note that there are two spaces in the string - look for multiple spaces within the string
  retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length); // Again, there are two spaces in each of the strings
 }
 return retValue; // Return the trimmed string back to the user
}


function Validator(frmname) {
 this.formobj=document.forms[frmname];
 if(!this.formobj) {
  alert("BUG: couldnot get Form object "+frmname);
  return;
 }
 if(this.formobj.onsubmit) {
  this.formobj.old_onsubmit = this.formobj.onsubmit;
  this.formobj.onsubmit=null;
 } else {
  this.formobj.old_onsubmit = null;
 }
 this.formobj.onsubmit=form_submit_handler;
 this.addValidation = add_validation;
 this.setAddnlValidationFunction=set_addnl_vfunction1;
 this.setAddnlValidationFunction2=set_addnl_vfunction2;
 this.setAddnlValidationFunction3=set_addnl_vfunction3;
 this.setAddnlValidationFunction4=set_addnl_vfunction4;
 this.setAddnlValidationFunction5=set_addnl_vfunction5;
 this.clearAllValidations = clear_all_validations;
}

function set_addnl_vfunction1(functionname) { this.formobj.addnlvalidation1 = functionname; }
function set_addnl_vfunction2(functionname) { this.formobj.addnlvalidation2 = functionname; }
function set_addnl_vfunction3(functionname) { this.formobj.addnlvalidation3 = functionname; }
function set_addnl_vfunction4(functionname) { this.formobj.addnlvalidation4 = functionname; }
function set_addnl_vfunction5(functionname) { this.formobj.addnlvalidation5 = functionname; }

function clear_all_validations() {
 for(var itr=0;itr < this.formobj.elements.length;itr++) { this.formobj.elements[itr].validationset = null; }
}

function form_submit_handler() {
 for(var itr=0;itr < this.elements.length;itr++) {
  if(this.elements[itr].validationset && !this.elements[itr].validationset.validate()) { return false; }
 }
 if(this.addnlvalidation1) { str =" var ret = "+this.addnlvalidation1; eval(str); if(!ret) return ret; }
 if(this.addnlvalidation2) { str =" var ret = "+this.addnlvalidation2; eval(str); if(!ret) return ret; }
 if(this.addnlvalidation3) { str =" var ret = "+this.addnlvalidation3; eval(str); if(!ret) return ret; }
 if(this.addnlvalidation4) { str =" var ret = "+this.addnlvalidation4; eval(str); if(!ret) return ret; }
 if(this.addnlvalidation5) { str =" var ret = "+this.addnlvalidation5; eval(str); if(!ret) return ret; }
 DForm(this.name);
 return true;
}

function DForm(strName) {
 for(i=0; i < eval("document."+strName+".length"); i++) {
  j=eval("document."+strName+"["+i+"]");
  if ((j.type=="submit")||(j.type=="reset")||(j.type=="button")) { j.disabled=true; }
 }
}

function add_validation(itemname,descriptor,errstr) {
 if(!this.formobj) { alert("BUG: the form object is not set properly"); return; }
 var itemobj = this.formobj[itemname];
 if(!itemobj) { alert("BUG: Couldnot get the input object named: "+itemname); return; }
 if(!itemobj.validationset) { itemobj.validationset = new ValidationSet(itemobj); }
 itemobj.validationset.add(descriptor,errstr);
}

function ValidationDesc(inputitem,desc,error) {
 this.desc=desc;
 this.error=error;
 this.itemobj = inputitem;
 this.validate=vdesc_validate;
}

function vdesc_validate() {
 this.itemobj.value=trim(this.itemobj.value);
 if (this.itemobj.style.display!=='none') {
  if ((this.itemobj.name.indexOf("Dia")!=-1)||(this.itemobj.name.indexOf("Mes")!=-1)||(this.itemobj.name.indexOf("Ano")!=-1)) {
   var imgobj = document.getElementById("d"+this.itemobj.name.replace("Dia","").replace("Mes","").replace("Ano",""))
  } else {
   var imgobj = document.getElementById("p"+this.itemobj.name)
  }
  if(!V2validateData(this.desc,this.itemobj,this.error)) {
   this.itemobj.focus();
   pngsrcchange(imgobj,false)
   return false;
  } else {
   pngsrcchange(imgobj,true)
  }
 }
 return true;
}

function pngsrcchange(obj,valid) {
 try{
  if (valid) { newpic="ico-16x32xok2.png"; } else { newpic="ico-16x32xerror.png"; }
  if (obj.src.indexOf("transpng.gif")!=-1) {
   obj.style.filter=obj.style.filter.substring(0,obj.style.filter.lastIndexOf("/")+1)+newpic+obj.style.filter.substring(obj.style.filter.lastIndexOf("'"));
  } else {
   obj.src=obj.src.substring(0,obj.src.lastIndexOf("/")+1)+newpic;
  }
 } catch(e) {}
}

function ValidationSet(inputitem) {
 this.vSet=new Array();
 this.add= add_validationdesc;
 this.validate= vset_validate;
 this.itemobj = inputitem;
}

function add_validationdesc(desc,error) {
 this.vSet[this.vSet.length]=new ValidationDesc(this.itemobj,desc,error);
}

function vset_validate() {
 for(var itr=0;itr<this.vSet.length;itr++) {
  if(!this.vSet[itr].validate()) { return false; }
 }
 return true;
}

function validateEmailv2(email) {
//  checks the validity of an email address entered returns true or false
 var splitted = email.match("^(.+)@(.+)$");
 if(splitted == null) return false;
 if(splitted[1] != null ) {
  var regexp_user=/^\"?[\w-_\.\+]*\"?$/;
  if(splitted[1].match(regexp_user) == null) return false;
 }
 if(splitted[2] != null) {
   var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
   if(splitted[2].match(regexp_domain) == null) {
    var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
    if(splitted[2].match(regexp_ip) == null) return false;
   }// if
   return true;
 }
 return false;
}

function V2validateData(strValidateStr,objValue,strError) {
 var epos = strValidateStr.search("=");
 var command  = "";
 var cmdvalue = "";
 if(epos >= 0) {
  command  = strValidateStr.substring(0,epos);
  cmdvalue = strValidateStr.substr(epos+1);
 } else {
  command = strValidateStr;
 }
 if (objValue.disabled) { return true;  }
 switch(command)  {
  case "req":
  case "required": {
   if(eval(objValue.value.length) == 0) {
    if(!strError || strError.length ==0) {
     strError = objValue.name + " : Required Field";
    }//if
    alert(strError);
    return false;
   }//if
   break;
  }//case required
  case "maxlength":
  case "maxlen": {
   if(eval(objValue.value.length) >  eval(cmdvalue)) {
    if(!strError || strError.length ==0) {
     strError = objValue.name + " : "+cmdvalue+" characters maximum ";
    }//if
    alert(strError + "\n[Current length = " + objValue.value.length + " ]");
    return false;
   }//if
   break;
  }//case maxlen
  case "minlength":
  case "minlen": {
   if(eval(objValue.value.length) <  eval(cmdvalue)) {
    if(!strError || strError.length ==0) {
     strError = objValue.name + " : " + cmdvalue + " characters minimum  ";
    }//if
    alert(strError + "\n[Current length = " + objValue.value.length + " ]");
    return false;
   }//if
   break;
  }//case minlen
  case "alnum":
  case "alphanumeric": {
   var charpos = objValue.value.search("[^A-Za-z0-9]");
   if(objValue.value.length > 0 &&  charpos >= 0) {
    if(!strError || strError.length ==0) {
     strError = objValue.name+": Only alpha-numeric characters allowed ";
    }//if
    alert(strError + "\n [Error character position " + eval(charpos+1)+"]");
    return false;
   }//if
   break;
  }//case alphanumeric
  case "num":
  case "numeric": {
   var charpos = objValue.value.search("[^0-9]");
   if(objValue.value.length > 0 &&  charpos >= 0) {
    if(!strError || strError.length ==0) {
     strError = objValue.name+": Only digits allowed ";
    }//if
    alert(strError + "\n [Error character position " + eval(charpos+1)+"]");
    return false;
   }//if
   break;
  }//numeric
  case "alphabetic":
  case "alpha": {
   var charpos = objValue.value.search("[^A-Za-z]");
   if(objValue.value.length > 0 &&  charpos >= 0) {
    if(!strError || strError.length ==0) {
     strError = objValue.name+": Only alphabetic characters allowed ";
    }//if
    alert(strError + "\n [Error character position " + eval(charpos+1)+"]");
    return false;
   }//if
   break;
  }//alpha
  case "mon":
  case "money": {
   var charpos = objValue.value.search("[^0-9|\,\.\+\-]");
   if(objValue.value.length > 0 &&  charpos >= 0) {
    if(!strError || strError.length ==0) {
     strError = objValue.name+": Only digits allowed ";
    }
    alert(strError + "\n [Error character position " + eval(charpos+1)+"]");
    return false;
   }
   break;
  }//money
  case "alnumhyphen":{
   var charpos = objValue.value.search("[^A-Za-z0-9\-_]");
   if(objValue.value.length > 0 &&  charpos >= 0) {
    if(!strError || strError.length ==0) {
     strError = objValue.name+": characters allowed are A-Z,a-z,0-9,- and _";
    }//if
    alert(strError + "\n [Error character position " + eval(charpos+1)+"]");
    return false;
   }//if
   break;
  }
  case "email": {
   if(!validateEmailv2(objValue.value)) {
    if(!strError || strError.length ==0) {
     strError = objValue.name+": Enter a valid Email address ";
    }//if
    alert(strError);
    return false;
   }//if
   break;
  }//case email
  case "lt":
  case "lessthan": {
   if(isNaN(objValue.value)) {
    alert(objValue.name+": Should be a number ");
    return false;
   }//if
   if(eval(objValue.value) >=  eval(cmdvalue)) {
    if(!strError || strError.length ==0) {
     strError = objValue.name + " : value should be less than "+ cmdvalue;
    }//if
    alert(strError);
    return false;
   }//if
   break;
  }//case lessthan
  case "gt":
  case "greaterthan": {
   if(isNaN(objValue.value)) {
    alert(objValue.name+": Should be a number ");
    return false;
   }//if
   if(eval(objValue.value) <=  eval(cmdvalue)) {
    if(!strError || strError.length ==0) {
     strError = objValue.name + " : value should be greater than "+ cmdvalue;
    }//if
    alert(strError);
    return false;
   }//if
   break;
  }//case greaterthan
  case "regexp": {
   if(!objValue.value.match(cmdvalue)) {
    if(!strError || strError.length ==0) {
     strError = objValue.name+": Invalid characters found ";
    }//if
    alert(strError);
    return false;
   }//if
   break;
  }//case regexp
  case "dontselect": {
   if(objValue.selectedIndex == null) {
    alert("BUG: dontselect command for non-select Item");
    return false;
   }
   if(objValue.selectedIndex == eval(cmdvalue)) {
    if(!strError || strError.length ==0) {
     strError = objValue.name+": Please Select one option ";
    }//if
    alert(strError);
    return false;
   }
   break;
  }//case dontselect
 }//switch
 return true;
}
