// THE EXTJS FUNCTION ===============================================
  var isJquery              = false;
  var imgPath               = './img/';
  var imgSysPath            = './img/sys/';
  var appDateFormat         = 'dd.mm.yy';
  var appTimeFormat         = 'H:i:s';
  var datePickerDateFormat  = 'dd.mm.yy';
  var datePickerTimeFormat  = 'H:i:s';  
  var errorTAG              = 'sayerror'; 
  var appTooltipColor       = 'green';
  var appDecimalsNumber     = 0;
  var appAJAXlinksContainer = ''; 
  var conPageInfo           = 'div_pageinfo';
  var conPageLoad           = 'div_pageload';
  var conPageTitle          = 'div_pagetitle';
  var conPageMessages       = 'div_pagemessage';
  var conPageControlers     = 'div_pagecontrols';  
  var conGridImgPath        = imgPath;
  var fckEditorPath         = '';
// ==================================================================   
// THE JQUERY HANDLER
  if(typeof jQuery == 'function') { var j = jQuery; isJquery  = true; };
  // VARS
  var ajxLoading     = '<div style="margin:0px;padding:0px;text-align:center"><center><br>&nbsp;<br><br>&nbsp;<br><img src="./img/sys/ajaxloader3.gif" border="0"></center></div>';
  var ajxLoadingAdm  = '<div style="margin:0px;padding:0px;text-align:center"><center><br>&nbsp;<br><br>&nbsp;<br><img src="../img/sys/ajaxloader3.gif" border="0"></center></div>';
  var imgNO          = '<font color="#ff0000">*</font>';
// THE JQUERY WRAP ==================================================
  function f(fieldid)
  { return $('#'+fieldid.replace(/:/g,"\\:").replace(/\./g,"\\."));  }; 
// ==================================================================
// GET THE FIELD VALUE ==============================================
  function v(fieldid)
  { return f(fieldid).val(); };
// ==================================================================
// SET THE FIELD VALUE ==============================================
  function s(fieldid, fieldvalue)
  { return f(fieldid).val(fieldvalue); };
// ==================================================================  
// GET THE JSON DATA ================================================
  function ajxJSN(fromURL, fromFunction)
  { fromURL = fromURL + '&iss=1&isjsn=1&dlt=' + ajxUNIX();  };
// ==================================================================
// MONEY CONVERTER ==================================================
  function usMoney(theConvertValue)
  { returnNumber  = $.currency(theConvertValue);
    returnNumber  = parseFloat(returnNumber).toFixed(appDecimalsNumber);  
    return returnNumber;  };     
// ==================================================================
// URL REDIRECTION ==================================================
  function urlRedirect(newURL)
  { window.location.replace(newURL);  };
// ==================================================================
// THE CACHE CONTROL ON AJAX ========================================  
  function ajxUNIX()
  { returnText  = ''; 
    DummyDate = new Date();
    DummyReturn = String(DummyDate.getFullYear() + '' + DummyDate.getMonth() + '' + DummyDate.getDay() + '' + DummyDate.getHours() + '' + DummyDate.getMinutes() + '' + DummyDate.getSeconds() + '' + (Math.ceil(Math.random() * 1000)));    
    returnText = DummyReturn;
    return returnText; };
// ==================================================================  
// MM SWAP FUNCTION =================================================
  function MM_swapImgRestore() 
  { var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;  };

  function MM_preloadImages() 
  { var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i]; };  }; };

  function MM_findObj(n, d) 
  { var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
      d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
    if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
    for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
    if(!x && d.getElementById) x=d.getElementById(n); return x; };

  function MM_swapImage() 
  { var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
    if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];  }; };
// ==================================================================
// THE ERROR MESSAGES ===============================================
  function putError(errorMessage)
  { theErrorTAG = errorTAG;
    if (errorMessage.length > 0)
    { $('#' + theErrorTAG).html(errorMessage);
      $('#' + theErrorTAG).show(); }
    else
    { $('#' + theErrorTAG).hide();
      $('#' + theErrorTAG).html('');  };  };

  function sayError(errorMessage)
  { theErrorTAG = errorTAG;
    if (errorMessage.length > 0)
    { $('#' + theErrorTAG).html(errorMessage);  }
    else
    { $('#' + theErrorTAG).html('');  };  };      
// ==================================================================
// FOCUS ============================================================
  function putFocus(fieldName)
  { if (fieldName.length  > 0)
    { $('#' + fieldName).focus();  }; };
// ==================================================================
// JQUERY POPULATE SELECT ===========================================
  function populateSelect(selectID, selectData, selectDefault)
  { options = '';
		for (var i = 0; i < selectData.length; i++) 
    { options += '<option value="' + selectData[i].jid + '">' + selectData[i].jname + '</option>';  };
			$('#'  + selectID).html(options);
			$('#'  + selectID + 'option:first').attr('selected', 'selected'); };
// ==================================================================
// FUNCTION CHECK EMAIL =============================================
  function IsValidEmail(email)
  { filter = /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
    return filter.test(email);  };  
// ==================================================================
// FUNCTIA DE CRYPTARE A DATELOR ====================================
  function doCrypt(YYYinput) {
   var YYYkeyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
   var YYYoutput = "";
   var YYYchr1, YYYchr2, YYYchr3;
   var YYYenc1, YYYenc2, YYYenc3, YYYenc4;
   var YYYi = 0;
   do {
      YYYchr1 = YYYinput.charCodeAt(YYYi++);
      YYYchr2 = YYYinput.charCodeAt(YYYi++);
      YYYchr3 = YYYinput.charCodeAt(YYYi++);
      YYYenc1 = YYYchr1 >> 2;
      YYYenc2 = ((YYYchr1 & 3) << 4) | (YYYchr2 >> 4);
      YYYenc3 = ((YYYchr2 & 15) << 2) | (YYYchr3 >> 6);
      YYYenc4 = YYYchr3 & 63;
      if (isNaN(YYYchr2)) {
         YYYenc3 = YYYenc4 = 64;
      } else if (isNaN(YYYchr3)) {
         YYYenc4 = 64;
      }
      YYYoutput = YYYoutput + YYYkeyStr.charAt(YYYenc1) + YYYkeyStr.charAt(YYYenc2) + 
         YYYkeyStr.charAt(YYYenc3) +YYYkeyStr.charAt(YYYenc4);
   } while (YYYi < YYYinput.length);   
   return YYYoutput;  }  
// ==================================================================
// THE TRIMS FUNCTIONS ============================================== 
  function js_ltrim(str, chars) {
  	chars = chars || "\\s";
  	return str.replace(new RegExp("^[" + chars + "]+", "g"), "");  };
  function js_rtrim(str, chars) {
  	chars = chars || "\\s";
  	return str.replace(new RegExp("[" + chars + "]+$", "g"), "");  };
  function js_trim(str, chars) {
  	return js_ltrim(js_rtrim(str, chars), chars);  };
// ==================================================================
// COOKIES ==========================================================
function createCookie(name,value,days) {
	if (days) 
  { var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();  }
	else { var expires = ""; };
	document.cookie = name+"="+value+expires+"; path=/"; };

function readCookie(name) 
  {  var nameEQ = name + "=";
	   var ca = document.cookie.split(';');
	   for(var i=0;i < ca.length;i++) 
    {  var c = ca[i];
		    while (c.charAt(0)==' ') c = c.substring(1,c.length);
		    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); };
	   return null;  };

function eraseCookie(name)  { createCookie(name,"",-1);  };
// ==================================================================
// UTF 8 FUNCTIONS ==================================================
  function js_utf8_encode(argString) 
  { var string=(argString+'');
  	var utftext="";
  	var start, end;
  	var stringl=0;
  	start=end=0;
  	stringl=string.length;
  	for(var n=0; n<stringl;  n++) {
  	 var c1=string.charCodeAt(n);
  	 var enc=null;
      if(c1<128) 
      { end++;  } 
      else if(c1>127&&c1<2048) 
      { enc=String.fromCharCode((c1>>6)|192)+String.fromCharCode((c1&63)|128);  }
    else 
    { enc=String.fromCharCode((c1>>12)|224)+String.fromCharCode(((c1>>6)&63)|128)+String.fromCharCode((c1&63)|128); };
    if(enc!==null) 
    { if(end>start) {
  	   utftext+=string.substring(start,end); }
  	  utftext+=enc;
  	 start=end=n+1;  };  };
    if(end>start) 
    { utftext+=string.substring(start,string.length); }
  return utftext; };
  
  function js_utf8_decode(str_data) 
  { var tmp_arr=[], i=0, ac=0, c1=0, c2=0, c3=0;
  	str_data+='';
    while(i<str_data.length) {
  	c1=str_data.charCodeAt(i);
    if(c1<128) {
  	tmp_arr[ac++]=String.fromCharCode(c1);
  	i++;
    } else if((c1>191)&&(c1<224)) {
  	c2=str_data.charCodeAt(i+1);
  	tmp_arr[ac++]=String.fromCharCode(((c1&31)<<6)|(c2&63));
  	i+=2;
    } else {
  	c2=str_data.charCodeAt(i+1);
  	c3=str_data.charCodeAt(i+2);
  	tmp_arr[ac++]=String.fromCharCode(((c1&15)<<12)|((c2&63)<<6)|(c3&63));
  	i+=3;  };  }; return tmp_arr.join(''); };
// ==================================================================
// BASE 64 DECODE ===================================================
  function js_base64_encode(data) 
  { var b64="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
	  var o1, o2, o3, h1, h2, h3, h4, bits, i=0, ac=0, enc="", tmp_arr=[];
    if(!data) { return data;  }
	 data=this.js_utf8_encode(data+'');
    do {
	  o1=data.charCodeAt(i++);
  	o2=data.charCodeAt(i++);
  	o3=data.charCodeAt(i++);
  	bits=o1<<16|o2<<8|o3;
  	h1=bits>>18&0x3f;
  	h2=bits>>12&0x3f;
  	h3=bits>>6&0x3f;
  	h4=bits&0x3f;
  	tmp_arr[ac++]=b64.charAt(h1)+b64.charAt(h2)+b64.charAt(h3)+b64.charAt(h4); }
	  while(i<data.length);
	 enc=tmp_arr.join('');
    switch(data.length%3) {
	 case 1: enc=enc.slice(0,-2)+'==';
	   break;
	 case 2: enc=enc.slice(0,-1)+'=';
	 break;  };
	 return enc; };

  function js_base64_decode(data) {
  	var b64="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
  	var o1, o2, o3, h1, h2, h3, h4, bits, i=0, ac=0, dec="", tmp_arr=[];
    if(!data) { return data; };
  	data+='';
    do {
  	h1=b64.indexOf(data.charAt(i++));
  	h2=b64.indexOf(data.charAt(i++));
  	h3=b64.indexOf(data.charAt(i++));
  	h4=b64.indexOf(data.charAt(i++));
  	bits=h1<<18|h2<<12|h3<<6|h4;
  	o1=bits>>16&0xff;
  	o2=bits>>8&0xff;
  	o3=bits&0xff;
    if(h3==64) {  tmp_arr[ac++]=String.fromCharCode(o1);  } 
    else if(h4==64) 
    { tmp_arr[ac++]=String.fromCharCode(o1,o2);
    } else {  tmp_arr[ac++]=String.fromCharCode(o1,o2,o3); };  }
  	while(i<data.length);
  	dec=tmp_arr.join('');
  	dec=this.js_utf8_decode(dec);
  	return dec;  };
// ==================================================================
// JQUERY PRELOAD IMAGES ============================================
// ==================================================================
// FCK CONFIGURATION ================================================
// ==================================================================  