﻿
var ie = (document.all) ? true : false;

function findObject_Like(objid){
    var elements = (ie) ? document.all : document.getElementsByTagName('*');
    var i = 0;
    for (i=0; i<elements.length; i++){
        if (elements[i].id.search(objid) != -1){
            return elements[i];
        }
    }
}

var dom = (document.getElementById) ? true : false;
var ns5 = ((navigator.userAgent.indexOf("Gecko") > -1) && dom) ? true : false;
var ie5 = ((navigator.userAgent.indexOf("MSIE") > -1) && dom) ? true : false;
var ns4 = (document.layers && !dom) ? true : false;
var ie4 = (document.all && !dom) ? true : false;

function FindObj(id) {
    if (dom) return document.getElementById(id);
    return (ns4) ? document.layers[id] : (ie4) ? document.all[id] : (ie5 || ns5) ? document.getElementById(id) : null;
}

function insertNthChar(string,chr,nth) {
  var output = '';
  for (var j=0; j<string.length; j++) {
    if (j == nth)
      output += chr;
    output += string.charAt(j);
  }
  return output;
}

function replacechar(str,oldstr,newstr){
 var output = '';
  for (var k=0; k<str.length; k++) {
    if (str.charAt(k) == oldstr ){
        output += newstr;
    }else{
        output += str.charAt(k);
    }
  }
  return output;
}

function TabdileRiyalBeString(Str){
    Str = replacechar(Str,",","");
    return Str;
}

function TabdileStringBeRiyal(Str){
    Str = TabdileRiyalBeString(Str);
    var i = Str.length;
    while (i > 3)
    {
        i = i - 3;
        Str = insertNthChar(Str,",",i);
    }
    return Str;
}

function isInteger (s)
{
  var i;

  if (isEmpty(s))
  if (isInteger.arguments.length == 1) return 0;
  else return (isInteger.arguments[1] == true);

  for (i = 0; i < s.length; i++)
  {
     var c = s.charAt(i);

     if (!isDigit(c)) return false;
  }

  return true;
}

function isEmpty(s)
{
  return ((s == null) || (s.length == 0))
}

function isDigit (c)
{
  return ((c >= "0") && (c <= "9"))
}

function isSignedInteger (s)
{   if (isEmpty(s))
  if (isSignedInteger.arguments.length == 1) return false;
  else return (isSignedInteger.arguments[1] == true);

  else {
     var startPos = 0;
     var secondArg = false;

     if (isSignedInteger.arguments.length > 1)
        secondArg = isSignedInteger.arguments[1];

     // skip leading + or -
     if ( (s.charAt(0) == "-") || (s.charAt(0) == "+") )
        startPos = 1;
     return (isInteger(s.substring(startPos, s.length), secondArg))
  }
}

function isPositiveInteger (s)
{   var secondArg = false;

   if (isPositiveInteger.arguments.length > 1)
      secondArg = isPositiveInteger.arguments[1];

   return (isSignedInteger(s, secondArg)
      && ( (isEmpty(s) && secondArg)  || (parseInt (s) > 0) ) );
}

function isNonnegativeInteger (s)
{   var secondArg = false;

   if (isNonnegativeInteger.arguments.length > 1)
    secondArg = isNonnegativeInteger.arguments[1];
   return (isSignedInteger(s, secondArg)
        && ( (isEmpty(s) && secondArg)  || (parseInt (s) >= 0) ) );
}

function SetDisplay(obj,display){
    obj.style.display = display;
}

function SetClass(obj,classname){
    obj.setAttribute("class", classname);
    obj.setAttribute("className", classname);
}

function Get_XML() {
    if (window.XMLHttpRequest) {
        return new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        return new ActiveXObject("Microsoft.XMLHTTP");
    } else { return null; }
}

function Send_XML(xmlhttp , url) {
    xmlhttp.open("GET", url, true);
    xmlhttp.setRequestHeader("If-Modified-Since", "Thu, 1 Jan 1970 00:00:00 GMT");
    xmlhttp.setRequestHeader("Cache-Control", "no-cache");
    xmlhttp.send(null);
}

function Int_Input(val) {
    if (!isInteger(val))
        return '';
    else
        return val;
}

function Set_Tab_Menu() {
    SetClass(FindObj("Menu_T"), "");
    SetClass(FindObj("Menu_Tactivity"), "");
    SetClass(FindObj("Menu_Tproject"), "");
    SetClass(FindObj("Menu_Taboutme"), "");
    SetClass(FindObj("Menu_Tcontactme"), "");
    SetClass(FindObj("Menu_T" + GetFolder()), "Active");
}

function GetFolder() {
    var myLoc = document.location.pathname;
    var myURLParts = myLoc.split("/");
    return myURLParts[1].toLowerCase();
}

function ReplaceBr(str) {
    return str.replace(/\n\r?/g, '<br />');
}

function ReplaceAll(str, strOld, strNew) {
    while (true) {
        if (str.search(strOld) != -1) {
            str = str.replace(strOld, strNew);
        } else {
            return str;
        }
    }
}
