﻿function trim(str, chars) {
	return ltrim(rtrim(str, chars), chars);
}
 
function ltrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}
 
function rtrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}

function ValidateStringLength(theString) {
	var theTrimString = trim(theString);
	if (theTrimString.length == '0') {
		return false;	
	} else {
		return true;
	}	
}

function isNumeric(sText) {
   var ValidChars = "0123456789";
   var IsNumber=true;
   var Char;
   for (i = 0; i < sText.length && IsNumber == true; i++) { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) {
         IsNumber = false;
	  }
   }
   return IsNumber;
}

function ValidateStringSpecialChars(theString) {
	
	var iChars = "#$^=[]\\\'{}|\"<>";
	
	for (var i = 0; i<theString.length; i++) {
	  if (iChars.indexOf(theString.charAt(i)) != -1) {
		return false;
	  }
    }

	return true;
}

function OnCheckAll( theForm, theName, theChecked ) {
// used to mark all check boxes in a list as "checked"
	for( var i=0; i<theForm.length; i++ ) {
        var input = theForm[i];
        if( input.nodeName == 'INPUT' )
            if( input.type == 'checkbox' && input.name == theName && ! input.disabled )
                if( input.checked != theChecked )
                    input.checked = theChecked;
    }
}

function ChangeGroupActionAndSubmit( theForm, theValue ) {
	theForm.MM_GroupAction.value=theValue;
	theForm.submit();
}

function ValidateSendForm(theForm) {
  var confirmsend = theForm.confirmsend.value;
	
	if (confirmsend != 'Y') {
		alert("You must confirm that you want to send the Newsletter.");
		return false;
	} else {
		return true;
	}
}

function changeConfirmsendCheckbox(theValue) {
	if (theValue == 'Y') {
		document.PageForm.confirmsend.value = 'N';
	} else {
		document.PageForm.confirmsend.value = 'Y';
	}
}

function changeConfirmsentNltCheckbox(theValue) {
	if (theValue == 'Y') {
		document.ConfirmForm.confirmsent.value = 'N';
	} else {
		document.ConfirmForm.confirmsent.value = 'Y';
	}
}

function AssignArticle( theForm, theValue ) {
	
	var artid = theForm.art_id.value;
	if (!artid) {
		alert("Problem with article id. Try again");
	} else {
		theForm.MM_assign.value=theValue;
		theForm.submit();
	}
}
function ValidateAssignForm(theForm) {
	
	var artid = theForm.search_artid.value;
	if (!artid) {
		alert("Please enter article id");
		return false;
	} else {
		return true;
	}
}

function ModulePrintPage() {
  lochref = '' + this.location;
	if (lochref.indexOf('?') > 0) {
		lochref = '?' + lochref.substring((lochref.indexOf('?')) + 1);
	} else {
		lochref = '';
	}

	w_width = 790;
	w_height = 500;
	if (screen) {
		w_left = (screen.availWidth - w_width)/2;
		w_top = ((screen.availHeight - w_height)/2)-20;
	}
	theWindowParam = 'width='+w_width+',height='+w_height+',left='+w_left+',top='+w_top+',status=no,resizable=no,scrollbars=yes';

	fparam = 'print_mod.php'+lochref;
  window.showPrintWindow = open(fparam, 'showPrintWindow', theWindowParam);
	setTimeout('if(showPrintWindow&&!showPrintWindow.closed)showPrintWindow.focus()',100);
}

function ValidateForgotPasswordForm(theForm) {
  var email = theForm.email.value;
	
	if (!email) {
		alert("Please enter your email.");
		return false;
	} else if ((email.indexOf('@') == -1) || (email.indexOf('.') == -1)) {
		alert("Wrong email format.");
		return false;
	} else {
		return true;
	}
}

function ValidateRepLoginForm(theForm) {
  var username = theForm.usr_log_username.value;
  var password = theForm.usr_log_password.value;
	
	if (!username) {
		alert("You must enter username.");
		return false;
	} else if (!password) {
		alert("You must enter password.");
		return false;
	} else {
		return true;
	}
}

function ValidateArticlesSearchBlock(theForm){
	var art_contains = theForm.art_contains.value;
	var art_contains_length = parseInt(art_contains.length, 10);
	
	if (art_contains_length < 3) {
	  alert("Τουλάχιστον 3 χαρακτήρες");
	  return false;
	} else {
	  return true;
	}

}

function ValidateForm_UnSub_General(theForm) {
  var sub_email = theForm.sub_email.value;
	
	if (!sub_email) {
		alert("Πρέπει να γράψετε το email σας.");
		return false;
	} else {
		return true;
	}
}

function ValidateForm_SendEmail_General(theForm) {
  var fname = theForm.fname.value;
  var femail = theForm.femail.value;
  var name = theForm.name.value;
  var email = theForm.email.value;
	
	if (ValidateStringLength(fname) == false) {
		alert("Πρέπει να γράψετε το όνομα του φίλου σας.");
		return false;
	} else if (ValidateStringLength(femail) == false) {
		alert("Πρέπει να γράψετε το email του φίλου σας.");
		return false;
	} else if ((femail.indexOf('@') == -1) || (femail.indexOf('.') == -1)) {
		alert("Λάνθασμένος τύπος email του φίλου σας.");
		return false;
	} else if (ValidateStringLength(name) == false) {
		alert("Πρέπει να γράψετε το όνομα σας.");
		return false;
	} else if (ValidateStringLength(email) == false) {
		alert("Πρέπει να γράψετε το email σας.");
		return false;
	} else if ((email.indexOf('@') == -1) || (email.indexOf('.') == -1)) {
		alert("Λάνθασμένος τύπος του email σας.");
		return false;
	} else {
		return true;
	}
}

function ValidateForm_Sub_General(theForm) {
  var sub_fname = theForm.sub_fname.value;
  var sub_lname = theForm.sub_lname.value;
  var sub_email = theForm.sub_email.value;
  var sub_secret_word = theForm.sub_secret_word.value;
  var cal = theForm.cal.value;   
	
	if (ValidateStringLength(sub_fname) == false) {
		alert("Πρέπει να γράψετε το όνομα σας.");
		return false;
	} else if (ValidateStringLength(sub_lname) == false) {
		alert("Πρέπει να γράψετε το επώνυμο σας.");
		return false;
	} else if (ValidateStringLength(sub_email) == false) {
		alert("Πρέπει να γράψετε το email σας.");
		return false;
	} else if ((sub_email.indexOf('@') == -1) || (sub_email.indexOf('.') == -1)) {
		alert("Λάθος τύπος email.");
		return false;
	} else if (ValidateStringLength(sub_secret_word) == false) {
		alert("Πρέπει να γράψετε μια μυστική λέξη.");
		return false;
	} else if (cal != 5) {
		alert("Υπολογίστε σωστά το 2+3");
		return false;
	} else {
		return true;
	}
}

function ValidateArticlesSearchBlock_ADV(theForm){
	
	var art_contains = theForm.art_contains.value;
	var art_contains_length = parseInt(art_contains.length, 10);

	var date_from = theForm.art_fdate.value;
	var date_to = theForm.art_tdate.value;
	
	var split_date_from = date_from.split(".");
	var from_dd = parseInt(split_date_from[0], 10);
	var from_mm = parseInt(split_date_from[1], 10);
	var from_yy = parseInt(split_date_from[2], 10);

	var split_date_to = date_to.split(".");
	var to_dd = parseInt(split_date_to[0], 10);
 	var to_mm = parseInt(split_date_to[1], 10);
	var to_yy = parseInt(split_date_to[2], 10);

	var fromdate1 = new Date(from_yy,(from_mm-1),from_dd);
	var todate1 = new Date(to_yy,(to_mm-1),to_dd);
	
	var today = new Date();	

	fromdate=from_dd+from_mm+from_yy;
	todate=to_dd+to_mm+to_yy;

	if (art_contains_length < 3) {
	  alert("Τουλάχιστον 3 χαρακτήρες");
	  return false;
	} else if (((from_dd != fromdate1.getDate()) || (from_mm != fromdate1.getMonth()+1) || (from_yy != fromdate1.getFullYear())) && (date_from != '') ) {
		alert("Η ημερομηνία 'Απο' είναι λανθασμένη.");
		return false;
	} else if ( ((to_dd != todate1.getDate()) || (to_mm != todate1.getMonth()+1) || (to_yy != todate1.getFullYear())) && (date_to != '') ) {
		alert("Η ημερομηνία 'Μέχρι' είναι λανθασμένη.");
		return false;
	} else if (((fromdate1 > todate1) && (todate != '')) || (fromdate == todate)) {
		alert("Η ημερομηνία 'Από' πρέπει να είναι πρίν απο την ημερομηνία 'Μέχρι'.");
		return false;
	} else {
		return true;
	}
}

function ValidateForm_Usr_General(theForm) {
  var usr_fname = theForm.usr_fname.value;
  var usr_lname = theForm.usr_lname.value;
  var usr_nickname = theForm.usr_nickname.value;
  var usr_email = theForm.usr_email.value;
  var usr_log_username = theForm.usr_log_username.value;
  var usr_log_password = theForm.usr_log_password.value;
  var verifyusr_log_password = theForm.verifyusr_log_password.value;
	
	if (!usr_fname) {
		alert("Πρέπει να γράψετε το Όνομα σας.");
		return false;
	} else if (!usr_lname) {
		alert("Πρέπει να γράψετε το Επώνυμο σας.");
		return false;
	} else if (!usr_nickname) {
		alert("Πρέπει να γράψετε το Ψευδώνυμο σας.");
		return false;
	} else if (!usr_email) {
		alert("Πρέπει να γράψετε το Email σας.");
		return false;
	} else if ((usr_email.indexOf('@') == -1) || (usr_email.indexOf('.') == -1)) {
		alert("Λανθασμένος τύπος Email.");
		return false;
	} else if (!usr_log_username) {
		alert("Πρέπει να γράψετε το Όνομα Χρήστη.");
		return false;
	} else if ((usr_log_username.length < 4) && (usr_log_username != ' ')) {
		alert("Το Όνομα Χρήστη πρέπει να είναι τουλάχιστο 4 χαρακτήρες.");
		return false;
	} else if (!usr_log_password) {
		alert("Πρέπει να γράψετε τον Κωδικό Πρόσβασης.");
		return false;
	} else if ((usr_log_password.length < 4) && (usr_log_password != ' ')) {
		alert("Ο Κωδικός Πρόσβασης πρέπει να είναι τουλάχιστο 4 χαρακτήρες.");
		return false;
	} else if ((usr_log_password.indexOf(' ') != -1) && (usr_log_password != ' ')) {
		alert("Λανθασμένος τύπος Κωδικού Πρόσβασης.");
		return false;
	} else if (usr_log_password != verifyusr_log_password) {
		alert("Ο Κωδικός Πρόσβασης δεν είναι ο ίδιος με την Επαλήθευση του.");
		return false;
	} else {
		return true;
	}
}

function ValidateForm_PrgVid_General(theForm) {
  var prgvid_title = theForm.prgvid_title.value;
	
	if (ValidateStringLength(prgvid_title) == false) {
		alert("You must enter video title.");
		return false;
	} else {
		return true;
	}
}

function ValidateForm_Pbl_General(theForm) {
  var pbl_title = theForm.pbl_title.value;

	if (!pbl_title) {
		alert("You must enter photos block title.");
		return false;
	} else {
		return true;
	}
}
function ValidateForm_Vid_General(theForm) {
  var vid_title = theForm.vid_title.value;

	if (!vid_title) {
		alert("You must enter video title.");
		return false;
	} else {
		return true;
	}
}
function ValidateForm_VigVid_General(theForm) {
  var vigvid_title = theForm.vigvid_title.value;

	if (!vigvid_title) {
		alert("You must enter video title.");
		return false;
	} else {
		return true;
	}
}
function ValidateForm_PhgImg_General(theForm) {
  var phgimg_title = theForm.phgimg_title.value;

	if (!phgimg_title) {
		alert("You must enter photo title.");
		return false;
	} else {
		return true;
	}
}
function ValidateForm_Gui_General(theForm) {
  var gui_name = theForm.gui_name.value;
  var cit_id = theForm.cit_id.value;
  var gca_id = theForm.gca_id.value;

	if (!gui_name) {
		alert("You must enter title.");
		return false;
	} else if (!cit_id) {
		alert("You must select city.");
		return false;
	} else if (!gca_id) {
		alert("You must select category.");
		return false;
	} else {
		return true;
	}
}
function ValidateForm_Prg_General(theForm) {
  var prg_title = theForm.prg_title.value;
  var prg_synopsis = theForm.prg_synopsis.value;
  if (ValidateStringLength(prg_title) == false) {
	  alert("You must enter program title.");
	  return false;
  } else if (ValidateStringSpecialChars(prg_synopsis) == false) {
	  alert("Δεν επιτρέπονται σχόλια με χρήση ειδικών χαρακτήρων (πχ : >,<,#,$,^ κα).");
	  return false;
  } else {
	  return true;
  }
}
function ValidateForm_Nlt_General(theForm) {
  var nlt_date = theForm.nlt_date.value;
  var nlt_issue_no = theForm.nlt_issue_no.value;

	if (!nlt_date) {
		alert("You must enter date.");
		return false;
	} else if (!nlt_issue_no) {
		alert("You must enter issue no.");
		return false;
	} else {
		return true;
	}
}

function ValidateForm_Doc_General(theForm) {
  var doc_title = theForm.doc_title.value;

	if (!doc_title) {
		alert("You must enter document title.");
		return false;
	} else {
		return true;
	}
}
function ValidateForm_Blo_General(theForm) {
   return true;
}
function ValidateMemLoginForm(theForm) {
  var username = theForm.mem_log_username.value;
  var password = theForm.mem_log_password.value;
	
	if (!username) {
		alert("Πρέπει να γράψετε το Όνομα Χρήστη.");
		return false;
	} else if (!password) {
			alert("Πρέπει να γράψετε τον Κωδικό Πρόσβασης.");
			return false;
	} else {
		return true;
	}
}

function ValidateForm_Mem_General(theForm) {
  var mem_fname = theForm.mem_fname.value;
  var mem_lname = theForm.mem_lname.value;
  var mem_nickname = theForm.mem_nickname.value;
  //var mem_mobile_phone = theForm.mem_mobile_phone.value;
  var mem_email = theForm.mem_email.value;
  var mem_log_username = theForm.mem_log_username.value;
  var mem_log_password = theForm.mem_log_password.value;
  var verifymem_log_password = theForm.verifymem_log_password.value;
	
	if (!mem_fname) {
		alert("Πρέπει να γράψετε το Όνομα σας.");
		return false;
	} else if (!mem_lname) {
		alert("Πρέπει να γράψετε το Επώνυμο σας.");
		return false;
	} else if (!mem_nickname) {
		alert("Πρέπει να γράψετε το Ψευδώνυμο σας.");
		return false;
	} else if (!mem_log_username) {
		alert("Πρέπει να γράψετε το Όνομα Χρήστη.");
		return false;
	} else if ((mem_log_username.length < 4) && (mem_log_username != ' ')) {
		alert("Το Όνομα Χρήστη πρέπει να είναι τουλάχιστο 4 χαρακτήρες.");
		return false;
	} else if (!mem_log_password) {
		alert("Πρέπει να γράψετε τον Κωδικό Πρόσβασης.");
		return false;
	} else if ((mem_log_password.length < 4) && (mem_log_password != ' ')) {
		alert("Ο Κωδικός Πρόσβασης πρέπει να είναι τουλάχιστο 4 χαρακτήρες.");
		return false;
	} else if ((mem_log_password.indexOf(' ') != -1) && (mem_log_password != ' ')) {
		alert("Λανθασμένος τύπος Κωδικού Πρόσβασης.");
		return false;
	} else if (mem_log_password != verifymem_log_password) {
		alert("Ο Κωδικός Πρόσβασης δεν είναι ο ίδιος με την Επαλήθευση του.");
		return false;
	//} else if (!mem_mobile_phone) {
	//	alert("Πρέπει να γράψετε τον Αριθμό του κινητού σας.");
	//	return false;
	} else if (!mem_email) {
		alert("Πρέπει να γράψετε το Email σας.");
		return false;
	} else if ((mem_email.indexOf('@') == -1) || (mem_email.indexOf('.') == -1)) {
		alert("Λανθασμένος τύπος Email.");
		return false;
	} else {
		return true;
	}
}

function ValidateForm_Mem_RegCredits(theForm) {
  var smscode = theForm.smscode.value;
	
	if (!smscode) {
		alert("Πρέπει να γράψετε το Κωδικό που λάβατε μέσω SMS.");
		return false;
	} else {
		return true;
	}
}


function ValidateForm_Amo_General(theForm) {
  var amo_name = theForm.amo_name.value;
  var abr_id = theForm.abr_id.value;
	
	if (!amo_name) {
		alert("You must enter model name.");
		return false;
	} else if (!abr_id) {
		alert("You must model company.");
		return false;
	} else {
		return true;
	}
}

function ValidateForm_Aed_General(theForm) {
  var aed_name = theForm.aed_name.value;
  var abr_id = theForm.abr_id.value;
  var amo_id = theForm.amo_id.value;
	
	if (!aed_name) {
		alert("You must enter edition name.");
		return false;
	} else if (!abr_id) {
		alert("You must select edition company.");
		return false;
	} else if (!amo_id) {
		alert("You must select edition model.");
		return false;
	} else {
		return true;
	}
}


function goToFindArticle_ADV(theform) {
  var ArtCategory = theform.sct_id.value;
  var ArtContains = theform.art_contains.value;
  var ArtFromDateParam = theform.art_fdate.value;
  var ArtToDateParam = theform.art_tdate.value;
  
  var SplitArtFromDate = ArtFromDateParam.split(".");
  var SplitArtToDate = ArtToDateParam.split(".");
  
  var ArtFromDate = ''; 
  var ArtToDate = ''; 
  
  if (ArtFromDateParam != '') {
	  ArtFromDate = SplitArtFromDate[2]+'-'+SplitArtFromDate[1]+'-'+SplitArtFromDate[0];
  }
  if (ArtToDateParam != '') {
	  ArtToDate = SplitArtToDate[2]+'-'+SplitArtToDate[1]+'-'+SplitArtToDate[0];
  }
  
  lochref = 'index.php?pageaction=tvg&modid=3&criteria=set';

	if (ArtCategory != '') {	lochref += '&sctid=' + ArtCategory; }
	if (ArtContains != '') {	lochref += '&contains=' + ArtContains; }
	if (ArtFromDate != '') {	lochref += '&fdate=' + ArtFromDate; }
	if (ArtToDate != '') {	lochref += '&tdate=' + ArtToDate; }

	location = lochref;
}


function uploadAsset(theSection, theFolder, theId, theReturnURL) {
	w_width = 570;
	w_height = 150;
	if (screen) {
		w_left = (screen.availWidth - w_width)/2;
		w_top = ((screen.availHeight - w_height)/2)-20;
	}
	theWindowParam = 'width='+w_width+',height='+w_height+',left='+w_left+',top='+w_top+',status=no,resizable=no,scrollbars=yes';
	
	fparam = 'admin/modules/ws_mod_tvg_01/tools/upload_file.php?section='+theSection+'&folder='+theFolder+'&id='+theId+'&returnurl='+theReturnURL;
  window.uploadAssetWindow = open(fparam, 'uploadAssetWindow', theWindowParam);
	setTimeout('if(uploadAssetWindow&&!uploadAssetWindow.closed)uploadAssetWindow.focus()',100);
}

var browser = new checkBrowser();
var preloadInterval ="";

function checkBrowser() {
   var userAgent = navigator.userAgent.toLowerCase()
   this.isIE = (userAgent.indexOf('msie') != -1);
   this.isGecko = (userAgent.indexOf('gecko') != -1 && userAgent.indexOf('safari') == -1);
   this.isOpera = (userAgent.indexOf('opera') != -1)
   this.isRTECompatible= (this.isIE || this.isGecko);
}

function preloadImage(ImageID) {
// ---------------------------------------------------------------------------------------------------
// preloadImage([id of an img tag])
// ---------------------------------------------------------------------------------------------------
// This function can be used in the previewArea only!
// It tests if the download of an image is complete. On positive result it:
//  - displays the image by changing its display properties
//  - changes the size of large images
//  - removes its own interval
//
// Usage example:
// if(preloadInterval!="") clearInterval(preloadInterval);            // remove possible old interval
// preloadInterval = setInterval("preloadImage('"+ImageID+"')",100);  // start this function in an interval

//settings for height and width according to source of functioncall
var ImgWidth = 190;
var ImgHeight= 190;
//if(Caller == 1)
//{
//ImgWidth = 200;
//ImgHeight = 200;
//}


  if(document.getElementById(ImageID).complete) {                     // do nothing while the image is not uploaded yet

// create dummy image to get (non-cached) image width & height
    testImage=document.createElement("img");
    testImage.src=document.getElementById(ImageID).src;

    percent = 100;
    if(testImage.width != 0) {                                        // do nothing while the width is unset
      document.getElementById(ImageID).style.display="block";
      if(testImage.width> ImgWidth || testImage.height> ImgHeight) {
// resize large images
        horPercent = 100*ImgWidth/testImage.width;
        verPercent = 100*ImgHeight/testImage.height;
        if(horPercent > verPercent) {
            document.getElementById(ImageID).height =ImgHeight;
            document.getElementById(ImageID).width =testImage.width * verPercent / 100;
            percent = verPercent;
        }  else {
            document.getElementById(ImageID).width =ImgWidth;
            document.getElementById(ImageID).height =testImage.height * horPercent / 100;
            percent = horPercent;
        }
      } else {
// reset image sizes for 1:1 Images
        document.getElementById(ImageID).width = testImage.width;
        document.getElementById(ImageID).height = testImage.height;
      }
// calculate new postion
      newMarginLeft = document.getElementById(ImageID).width/2;
      newMarginTop = document.getElementById(ImageID).height/2;

      if (!browser.isOpera)
      {
        document.getElementById(ImageID).style.left="50%";
        document.getElementById(ImageID).style.top="50%";
        document.getElementById(ImageID).style.marginLeft="-"+newMarginLeft+"px";
        document.getElementById(ImageID).style.marginTop="-"+newMarginTop +"px";
      }
      else
      {
        document.getElementById(ImageID).style.margin='auto';
      }

      newTextnode= document.createTextNode("("+Math.floor(percent)+"%)");
      document.getElementById("Percentage").replaceChild(newTextnode, document.getElementById("Percentage").firstChild);
      document.getElementById("Loading").style.display="none";
      document.getElementById("Percentage").style.display="inline";
      clearInterval(preloadInterval);
    }
  }
}

function preloadImage_Gal(ImageID) {
// ---------------------------------------------------------------------------------------------------
// preloadImage([id of an img tag])
// ---------------------------------------------------------------------------------------------------
// This function can be used in the previewArea only!
// It tests if the download of an image is complete. On positive result it:
//  - displays the image by changing its display properties
//  - changes the size of large images
//  - removes its own interval
//
// Usage example:
// if(preloadInterval!="") clearInterval(preloadInterval);            // remove possible old interval
// preloadInterval = setInterval("preloadImage('"+ImageID+"')",100);  // start this function in an interval

//settings for height and width according to source of functioncall
var ImgWidth = 190;
var ImgHeight= 190;
//if(Caller == 1)
//{
//ImgWidth = 200;
//ImgHeight = 200;
//}


  if(document.getElementById(ImageID).complete) {                     // do nothing while the image is not uploaded yet

// create dummy image to get (non-cached) image width & height
    testImage=document.createElement("img");
    testImage.src=document.getElementById(ImageID).src;

    percent = 100;
    if(testImage.width != 0) {                                        // do nothing while the width is unset
      document.getElementById(ImageID).style.display="block";
      if(testImage.width> ImgWidth || testImage.height> ImgHeight) {
// resize large images
        horPercent = 100*ImgWidth/testImage.width;
        verPercent = 100*ImgHeight/testImage.height;
        if(horPercent > verPercent) {
            document.getElementById(ImageID).height =ImgHeight;
            document.getElementById(ImageID).width =testImage.width * verPercent / 100;
            percent = verPercent;
        }  else {
            document.getElementById(ImageID).width =ImgWidth;
            document.getElementById(ImageID).height =testImage.height * horPercent / 100;
            percent = horPercent;
        }
      } else {
// reset image sizes for 1:1 Images
        document.getElementById(ImageID).width = testImage.width;
        document.getElementById(ImageID).height = testImage.height;
      }
// calculate new postion
      newMarginLeft = document.getElementById(ImageID).width/2;
      newMarginTop = document.getElementById(ImageID).height/2;

      if (!browser.isOpera)
      {
        document.getElementById(ImageID).style.left="50%";
        document.getElementById(ImageID).style.top="50%";
        document.getElementById(ImageID).style.marginLeft="-"+newMarginLeft+"px";
        document.getElementById(ImageID).style.marginTop="-"+newMarginTop +"px";
      }
      else
      {
        document.getElementById(ImageID).style.margin='auto';
      }

      newTextnode= document.createTextNode("("+Math.floor(percent)+"%)");
      document.getElementById("Percentage_Gal").replaceChild(newTextnode, document.getElementById("Percentage_Gal").firstChild);
      document.getElementById("Loading_Gal").style.display="none";
      document.getElementById("Percentage_Gal").style.display="inline";
      clearInterval(preloadInterval);
    }
  }
}

function changePreviewImage(ImageID, ImageURL, ImageTitle) {
// changes the PreviewImage in the PreviewArea and starts the image preloader
  changeImage(ImageID, ImageURL, ImageTitle);
  document.getElementById(ImageID).style.display="none";      // hide preview image while loading
  document.getElementById("Loading").style.display="inline";  // display Loading info
  document.getElementById("Percentage").style.display="none"; // hide image size while loading

  if(preloadInterval!="") clearInterval(preloadInterval);
  preloadInterval = setInterval("preloadImage('"+ImageID+"')",100);
}

function changePreviewImageGal(ImageID, ImageURL, ImageTitle) {
// changes the PreviewImage in the PreviewArea and starts the image preloader
  changeImage(ImageID, ImageURL, ImageTitle);
  document.getElementById(ImageID).style.display="none";      // hide preview image while loading
  document.getElementById("Loading_Gal").style.display="inline";  // display Loading info
  document.getElementById("Percentage_Gal").style.display="none"; // hide image size while loading

  if(preloadInterval!="") clearInterval(preloadInterval);
  preloadInterval = setInterval("preloadImage_Gal('"+ImageID+"')",100);
}

function changeImage(ImageID, ImageURL, ImageTitle) {
// changes the image url & title of an image element (specified by its id attribute)
  theTmpInterval = setInterval("document.getElementById('"+ImageID+"').src = '"+ImageURL+"';", 0);   // display image
//  document.getElementById(ImageID).src = ImageURL;
  if (ImageTitle) {
    document.getElementById(ImageID).alt = ImageTitle;
  }
}

function selectAsset(theFolder,theAssetPreview) {
	w_width = 530;
	w_height = 350;
	if (screen) {
		w_left = (screen.availWidth - w_width)/2;
		w_top = ((screen.availHeight - w_height)/2)-20;
	}
	theWindowParam = 'width='+w_width+',height='+w_height+',left='+w_left+',top='+w_top+',status=no,resizable=no,scrollbars=yes';

	fparam = 'admin/includes/tools/selectasset.php?folder=' + theFolder+'&assetpreview='+theAssetPreview;
  window.selectAssetWindow = open(fparam, 'selectAssetWindow', theWindowParam);
	setTimeout('if(selectAssetWindow&&!selectAssetWindow.closed)selectAssetWindow.focus()',100);
}

function updateAssetPreview (theFolder, theFileName, theAssetPreview) {
	switch (theAssetPreview) {
		case 'prgvid_image_filename': 
			document.PageForm.dumbprgvid_image_filename.value = theFileName;
			document.PageForm.prgvid_image_filename.value = theFileName;
			break;
		case 'prgvid_video_filename': 
			document.PageForm.dumbprgvid_video_filename.value = theFileName;
			document.PageForm.prgvid_video_filename.value = theFileName;
			break;
	}
}
function clearAsset(theAssetPreview) {
	switch (theAssetPreview) {
		case 'prgvid_image_filename': 
			document.PageForm.dumbprgvid_image_filename.value = '';
			document.PageForm.prgvid_image_filename.value = '';
			break;
		case 'prgvid_video_filename': 
			document.PageForm.dumbprgvid_video_filename.value = '';
			document.PageForm.prgvid_video_filename.value = '';
			break;
	}
}

function uploadAsset_ParentFolder(theSection, theAssetParentFolder, theFolder, theId, theReturnURL) {
	w_width = 570;
	w_height = 150;
	if (screen) {
		w_left = (screen.availWidth - w_width)/2;
		w_top = ((screen.availHeight - w_height)/2)-20;
	}
	theWindowParam = 'width='+w_width+',height='+w_height+',left='+w_left+',top='+w_top+',status=no,resizable=no,scrollbars=yes';
	
	fparam = 'admin/modules/ws_mod_tvg_01/tools/upload_file_v2.php?section='+theSection+'&assetparentfolder='+theAssetParentFolder+'&folder='+theFolder+'&id='+theId+'&returnurl='+theReturnURL;
  window.uploadAssetWindow = open(fparam, 'uploadAssetWindow', theWindowParam);
	setTimeout('if(uploadAssetWindow&&!uploadAssetWindow.closed)uploadAssetWindow.focus()',100);
}

function CountCheckedRecs( theForm, theName ) {
// used to mark all check boxes in a list as "checked"
	var Checked = 0;
    for( var i=0; i<theForm.length; i++ ) {
        var input = theForm[i];
        if( input.nodeName == 'INPUT' )
            if(input.type == 'checkbox' && input.name == theName && input.checked) {
				Checked++;	
			}
    }
	return Checked;
}


function ChangeGroupActionAndSubmitConfirm(theForm, theValue, theName) {
	if (CountCheckedRecs(theForm, theName) > 0) {
	  if (confirm("Are you sure you want to delete selected images?")) {
		theForm.MM_GroupAction.value=theValue;
		theForm.submit();
	  }
	}
}

function ShowImageNormalSize(theImage) {
	w_width = 100;
	w_height = 100;
	if (screen) {
		w_left = 10;
		w_top = 10;
	}
	theWindowParam = 'width='+w_width+',height='+w_height+',left='+w_left+',top='+w_top+',status=no,resizable=yes,scrollbars=yes';
	
	fparam = 'admin/modules/ws_mod_tvg_01/tools/show_normal_size.php?img=' + theImage;
  window.ShowImageNormalSizeWindow = open(fparam, 'ShowImageNormalSizeWindow', theWindowParam);
	setTimeout('if(ShowImageNormalSizeWindow&&!ShowImageNormalSizeWindow.closed)ShowImageNormalSizeWindow.focus()',100);
}

function MakeArray(n) {
	this.length = n
	return this
}

monthNames = new MakeArray(12)
monthNames[1] = "Ιανουαρίου"
monthNames[2] = "Φεβρουαρίου"
monthNames[3] = "Μαρτίου"
monthNames[4] = "Απριλίου"
monthNames[5] = "Μαΐου"
monthNames[6] = "Ιουνίου"
monthNames[7] = "Ιουλίου"
monthNames[8] = "Αυγούστου"
monthNames[9] = "Σεπτεμβρίου"
monthNames[10] = "Οκτωβρίου"
monthNames[11] = "Νοεμβρίου"
monthNames[12] = "Δεκεμβρίου"
dayNames = new MakeArray(7)
dayNames[1] = "Κυριακή"
dayNames[2] = "Δευτέρα"
dayNames[3] = "Τρίτη"
dayNames[4] = "Τετάρτη"
dayNames[5] = "Πέμπτη"
dayNames[6] = "Παρασκευή"
dayNames[7] = "Σάββατο"

function clock() {
	//if (!document.layers && !document.all) return;
	var digital = new Date();
	var theDay = dayNames[digital.getDay() + 1]
	var day = digital.getDay() + 1;
	var theMonth = monthNames[digital.getMonth() + 1]
	var month = digital.getMonth() + 1;
	var year = digital.getYear();// - 2000;
	var hours = digital.getHours();
	var minutes = digital.getMinutes();
	var seconds = digital.getSeconds();
	var amOrPm = "πμ";
	if (hours > 11) amOrPm = "μμ";
	//if (hours > 12) hours = hours - 12;
	//if (hours == 0) hours = 12;
	if (hours <= 9) hours = "0" + hours;
	if (minutes <= 9) minutes = "0" + minutes;
	if (seconds <= 9) seconds = "0" + seconds;
	if (day <= 9) day = "0" + day;
	if (month <= 9) month = "0" + month;
	if (year <= 9) year = "0" + year;
	//dispDate = theDay+" "+" "+digital.getDate()+"."+month+"."+year; //Day 20.12.2006
	dispDate = theDay+" "+" "+digital.getDate()+" "+theMonth;
	dispTime = hours+":"+minutes;//+" "+amOrPm;
	
	/*if (document.layers) {
	document.layers.pendule_date.document.write(dispDate);
	document.layers.pendule.document.write(dispTime);
	document.layers.pendule_date.document.close();
	document.layers.pendule.document.close();
	}
	else
	if (document.all)
	pendule_date.innerHTML = dispDate;
	pendule.innerHTML = dispTime;*/
	if (document.getElementById('pendule_date')) {
	  document.getElementById('pendule_date').innerHTML = dispDate;
	  document.getElementById('pendule').innerHTML = dispTime;
	  setTimeout("clock()", 1000);
	}
}



/* Calendar functions */

function LTrim__Cldr(s){
	while (s.length && s.charAt(0) == ' ')
		s = s.substr(1);
	return (s);
}

function RTrim__Cldr(s){
	while (s.length > 0 && s.charAt(s.length-1) == ' ')
		s = s.substring(0,s.length-1);
	return (s);
}

function Trim__Cldr(s){
	return LTrim__Cldr(RTrim__Cldr(s));
}

function FindobjSingle__Cldr(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=FindobjSingle__Cldr(n,d.layers[i].document);
	if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function Create__Cldr(objSingle__Cldr){
	var strFormCalendar = '';
	strFormCalendar+=objAlls__Cldr.HTMLTop;
	strFormCalendar+="<table cellpadding=5 cellspacing=1 align=center border=0 width=200 ";
	//if (objAlls__Cldr.Class=='')
		strFormCalendar+="bgcolor=\"cecece\" ";
	strFormCalendar+=">";
	strFormCalendar+="<tr>";
	strFormCalendar+="<td bgcolor=\"efeeee\">";
	strFormCalendar+="<table cellpadding=0 cellspacing=1 align=center border=0 width=100% " ;
	//if (objAlls__Cldr.Class!='')
	//	strFormCalendar+="class=\"" + objAlls__Cldr.Class + "\" ";
	//else
		strFormCalendar+="bgcolor=\"d6d6d6\" ";
	strFormCalendar+=">";
	strFormCalendar+="<tr>";
	strFormCalendar+="<td>";
	strFormCalendar+="<TABLE border='0' cellPadding='2' cellSpacing='2' width='100%'>";
	strFormCalendar+="<TR>";
	strFormCalendar+="<TD>";
	strFormCalendar+="<TABLE border='0' cellPadding='0' cellSpacing='0' width='100%'>";
	strFormCalendar+="<TR>";
	if((!objSingle__Cldr.cmbYearVisible)&&(!objSingle__Cldr.cmbMonthVisible)&&(objSingle__Cldr.btnPrevious))
	{
		strFormCalendar+="<TD align='left'>";
		strFormCalendar+=CreateBtnPrevNext__Cldr(objSingle__Cldr, -1);
		strFormCalendar+="</TD>";
		strFormCalendar+="<td>&nbsp</td>";
	}
	strFormCalendar+="<TD align='right'>";
	if(objSingle__Cldr.cmbYearVisible)
		strFormCalendar+=CreateCmbYear__Cldr(objSingle__Cldr);
	else
		if((!objSingle__Cldr.cmbYearVisible)&&(!objSingle__Cldr.cmbMonthVisible))
			strFormCalendar+=CreateLblMonth__Cldr(objSingle__Cldr);
		else
			strFormCalendar+=CreateLblYear__Cldr(objSingle__Cldr);
	strFormCalendar+="</TD>";
	strFormCalendar+="<td>&nbsp</td>";
	strFormCalendar+="<TD align='left'>";
	if(objSingle__Cldr.cmbMonthVisible)
		strFormCalendar+=CreateCmbMonth__Cldr(objSingle__Cldr);
	else
		if((!objSingle__Cldr.cmbYearVisible)&&(!objSingle__Cldr.cmbMonthVisible))
			strFormCalendar+=CreateLblYear__Cldr(objSingle__Cldr);
		else
			strFormCalendar+=CreateLblMonth__Cldr(objSingle__Cldr);
	strFormCalendar+="</TD>";
	if((objSingle__Cldr.btnNext)||(objSingle__Cldr.btnPrevious))
		strFormCalendar+="<td>&nbsp</td>";
	if(((objSingle__Cldr.cmbYearVisible)||(objSingle__Cldr.cmbMonthVisible))&&(objSingle__Cldr.btnPrevious))
	{
		strFormCalendar+="<TD align='right'>";
		strFormCalendar+=CreateBtnPrevNext__Cldr(objSingle__Cldr, -1);
		strFormCalendar+="</TD>";
	}
	if(objSingle__Cldr.btnNext)
	{
		strFormCalendar+="<TD align='right'>";
		strFormCalendar+=CreateBtnPrevNext__Cldr(objSingle__Cldr, 1);
		strFormCalendar+="</TD>";
	}
	strFormCalendar+="</TR>";
	strFormCalendar+="</TABLE>";
	strFormCalendar+="</TD>";
	strFormCalendar+="</TR>";
	strFormCalendar+="<TR>";
	strFormCalendar+="<TD>";
	strFormCalendar+=CreateTblGrid__Cldr(objSingle__Cldr);
	strFormCalendar+="</TD>";
	strFormCalendar+="</TR>";
	strFormCalendar+="<TR>";
	strFormCalendar+="<TD align='right'>";
	strFormCalendar+="<TABLE border=0 cellPadding=0 cellSpacing=0>";
	strFormCalendar+="<TR>";
	strFormCalendar+="<TD align='right'>";
	if (objAlls__Cldr.btnirm)
		strFormCalendar+=CreateBtnConf__Cldr(objSingle__Cldr)
	else
		strFormCalendar+="&nbsp;";
	strFormCalendar+="</TD>";
	if ((objAlls__Cldr.btnCancel)&&(!objSingle__Cldr.Expanded))
	{
		strFormCalendar+="<TD>&nbsp;</TD>";
		strFormCalendar+="<TD align='right'>";
		strFormCalendar+=CreateBtnCanc__Cldr()
		strFormCalendar+="</TD>";
	}
	strFormCalendar+="</TR>";
	strFormCalendar+="</TABLE>";
	strFormCalendar+="</TD>";
	strFormCalendar+="</TR>";
	strFormCalendar+="</TABLE>";
	strFormCalendar+="</td>";
	strFormCalendar+="</tr>";
	strFormCalendar+="</table>";
	strFormCalendar+="</td>";
	strFormCalendar+="</tr>";
	strFormCalendar+="</table>";
	strFormCalendar+=objAlls__Cldr.HTMLBottom;
	return (strFormCalendar);
}

function Init__Cldr(strClientId)
{
	var objSingle__Cldr=eval("obj__" + strClientId );
	if (!objSingle__Cldr.Expanded)
		SetTT__Cldr(objSingle__Cldr.ClientId)
	ChangePage__Cldr(objSingle__Cldr.ClientId);
}

function Open__Cldr(strClientId, event){
	var blnWrongDate=false;
	var objSingle__Cldr=eval("obj__" + strClientId );
	var obj__TxtCldr=FindobjSingle__Cldr(objSingle__Cldr.ClientId);
	var dtFrom = new Date(objSingle__Cldr.YearFrom, objSingle__Cldr.MonthFrom-1, objSingle__Cldr.DayFrom)
	var dtTo = new Date(objSingle__Cldr.YearTo, objSingle__Cldr.MonthTo-1, objSingle__Cldr.DayTo)
	var dtInputBoxDate =  ConvertStringToDate__Cldr(obj__TxtCldr.value);
	if (dtInputBoxDate=='')
	{
		blnWrongDate=true;
		if (objSingle__Cldr.DefaultDate=='')
			dtInputBoxDate=new Date();
		else
			dtInputBoxDate=ConvertStringToDate__Cldr(objSingle__Cldr.DefaultDate);
	}
	if (dtInputBoxDate<=dtFrom)
		dtInputBoxDate=dtFrom;
	else
		if (dtTo<=dtInputBoxDate)
			dtInputBoxDate=dtTo;
	if (!blnWrongDate)
		obj__TxtCldr.value = ConvertDateToString__Cldr(dtInputBoxDate);
	objSingle__Cldr.Year=dtInputBoxDate.getFullYear();
	objSingle__Cldr.Month=dtInputBoxDate.getMonth() + 1;
	objSingle__Cldr.Day=dtInputBoxDate.getDate();
	var strCode=Create__Cldr(objSingle__Cldr);
	if (!objSingle__Cldr.Expanded)
	{
		FillSpan__Cldr(strCode, objSingle__Cldr, event);
		Init__Cldr(objSingle__Cldr.ClientId);
	}
	else
		return strCode;
}
 
function FillSpan__Cldr(strCode, objSingle__Cldr, event){
	var objSpan=FindobjSingle__Cldr('S__Cldr');
	switch(objSingle__Cldr.PositionKind)
	{
		case "absolute": //absolute positioning
			objSpan.style.top = objSingle__Cldr.Top;
			objSpan.style.left = objSingle__Cldr.Left;
			break;
		case "relative": //relative positioning
			objSpan.style.top = event.clientY + document.body.scrollTop + objSingle__Cldr.Top;
			objSpan.style.left = event.clientX + document.body.scrollLeft + objSingle__Cldr.Left;
			break;
	}
	objSpan.innerHTML=strCode;
}

function CreateTblGrid__Cldr(objSingle__Cldr){
	var lngCountDays = 0;
	var strTblGridDHTML="";
	var lngCountCol;
	var lngLastDay;
	var lngCountRow;
	strTblGridDHTML+="<TABLE ";
	//if (objAlls__Cldr.GridClass=='')
		strTblGridDHTML+="bgcolor=\"efeeee\" ";
	strTblGridDHTML+="border=0 cellPadding=1 cellSpacing=1 align=center width=100%>";
	strTblGridDHTML+="<TR>";
	var strTdHTML = "<TD bgcolor=\"d6d6d6\" ";
	if (objAlls__Cldr.GridClass!='')
		strTdHTML +="class=\"" + objAlls__Cldr.GridClass + "\" ";
	strTdHTML +="align='center'>";
	if (objAlls__Cldr.SundayFirstDayOfWeek)
	{
		lngLastDay=5;
		strTblGridDHTML+=strTdHTML + objAlls__Cldr.DayName[6];
	}
	else
		lngLastDay=6;
	for (lngCountDays = 0; lngCountDays <= lngLastDay; lngCountDays++) 
		strTblGridDHTML+=strTdHTML + objAlls__Cldr.DayName[lngCountDays];
	strTblGridDHTML+="</TR>";
	lngCountDays = 0;
	for (lngCountRow = 1; lngCountRow <= 6; lngCountRow++) 
	{
		strTblGridDHTML+="<TR>";
		for (lngCountCol = 1; lngCountCol <= 7; lngCountCol++) 
		{
			lngCountDays++;
			strTblGridDHTML+="<TD ";
			strTblGridDHTML+="onclick=\"javascript:SelectDay__Cldr('" + objSingle__Cldr.ClientId + "', '" + lngCountDays + "')\" ";
			if (objAlls__Cldr.GridClass!='')
				strTblGridDHTML +="class=\"" + objAlls__Cldr.GridClass + "\" ";
			else
				strTblGridDHTML+="bgcolor=\"" + objAlls__Cldr.GridBackColor + "\" ";
			strTblGridDHTML+=">";
			strTblGridDHTML+="<SPAN id='Day" + objSingle__Cldr.ClientId + lngCountDays + "'></SPAN></td>";
		}
		strTblGridDHTML+="</TR>";
	}
	strTblGridDHTML+="</TABLE>";
	return (strTblGridDHTML);
}


function CreateCmbMonth__Cldr(objSingle__Cldr){
	var strCmbMonthDHTML="<select ";
	var lngCounter;
	var strResult='';
	if (objSingle__Cldr.cmbMonthStyle!="")
		strCmbMonthDHTML+="style=\"" + objSingle__Cldr.cmbMonthStyle + "\" ";
	if (objSingle__Cldr.cmbMonthClass!="")
		strCmbMonthDHTML+="class=\"" + objSingle__Cldr.cmbMonthClass + "\" ";
	if (objSingle__Cldr.cmbMonthDisabled)
		strCmbMonthDHTML+="DISABLED ";
	strCmbMonthDHTML+="name='lstMonths" + objSingle__Cldr.ClientId + "' onchange=\"javascript:ChangePage__Cldr(\'" + objSingle__Cldr.ClientId + "\')\">"
	if (objSingle__Cldr.lngFirstMonth>objSingle__Cldr.lngLastMonth)
	{
		for (lngCounter = objSingle__Cldr.lngFirstMonth; lngCounter <=12; lngCounter++)
		{
			if (objSingle__Cldr.Month==lngCounter)
				status='selected';
			else
				status='';
			strResult += '<OPTION value=\"' + lngCounter + '\" ' + status + '>'+  objAlls__Cldr.MonthName[lngCounter-1]  + '</OPTION>';
		}
		for (lngCounter = 1; lngCounter <=objSingle__Cldr.lngLastMonth; lngCounter++)
		{
			if (objSingle__Cldr.Month==lngCounter)
				status='selected';
			else
				status='';
			strResult = strResult + '<OPTION value=\"' + lngCounter + '\" ' + status + '>' +  objAlls__Cldr.MonthName[lngCounter-1] + '</OPTION>';
		}
	}
	else
	{
		for (lngCounter = objSingle__Cldr.lngFirstMonth; lngCounter <=objSingle__Cldr.lngLastMonth; lngCounter++)
		{
			if (objSingle__Cldr.Month==lngCounter)
				status='selected';
			else
				status='';
			strResult = strResult + '<OPTION value=\"' + lngCounter + '\" ' + status + '>' +  objAlls__Cldr.MonthName[lngCounter-1] + '</OPTION>';
		}
	}
	strCmbMonthDHTML+=strResult;
	strCmbMonthDHTML+="</select>";
	return (strCmbMonthDHTML);
}

function CreateLblMonth__Cldr(objSingle__Cldr){
	var strLblMonthDHTML="<span ";
	if (objAlls__Cldr.Style!="")
		strLblMonthDHTML+="style=\"" + objAlls__Cldr.Style + "\" ";
	if (objAlls__Cldr.Class!="")
		strLblMonthDHTML+="class=\"" + objAlls__Cldr.Class + "\" ";
	strLblMonthDHTML+="id='SM" + objSingle__Cldr.ClientId + "__Cldr' ";
	strLblMonthDHTML+="name='SM" + objSingle__Cldr.ClientId + "__Cldr' ";
	strLblMonthDHTML+="value='" + objSingle__Cldr.Month + "' ";
	strLblMonthDHTML+=">";
	strLblMonthDHTML+=objAlls__Cldr.MonthName[objSingle__Cldr.Month - 1];
	strLblMonthDHTML+="</span>";
	return (strLblMonthDHTML);
}

function CreateCmbYear__Cldr(objSingle__Cldr){
	var strCmbYearDHTML="<select ";
	var lngCounter;
	var strResult='';
	if (objSingle__Cldr.cmbYearStyle!="")
		strCmbYearDHTML+="style=\"" + objSingle__Cldr.cmbYearStyle + "\" ";
	if (objSingle__Cldr.cmbYearClass!="")
		strCmbYearDHTML+="class=\"" + objSingle__Cldr.cmbYearClass + "\" ";
	if (objSingle__Cldr.cmbYearDisabled)
		strCmbYearDHTML+="DISABLED ";
	strCmbYearDHTML+="name='lstYears" + objSingle__Cldr.ClientId + "' onchange=\"javascript:ChangePage__Cldr(\'" + objSingle__Cldr.ClientId + "\')\">"
	for (lngCounter = objSingle__Cldr.YearFrom; lngCounter <=objSingle__Cldr.YearTo; lngCounter++)
	{
		if (objSingle__Cldr.Year==lngCounter)
			status='selected';
		else
			status='';
		strResult = strResult + '<OPTION value="' + lngCounter + '" ' + status + '>' + lngCounter + '</OPTION>';
	}
	strCmbYearDHTML+=strResult;
	strCmbYearDHTML+="</select>";
	return (strCmbYearDHTML);
}

function CreateLblYear__Cldr(objSingle__Cldr){
	var strLblYearDHTML="<span ";
	if (objAlls__Cldr.Style!="")
		strLblYearDHTML+="style=\"" + objAlls__Cldr.Style + "\" ";
	if (objAlls__Cldr.Class!="")
		strLblYearDHTML+="class=\"" + objAlls__Cldr.Class + "\" ";
	strLblYearDHTML+="id='SY" + objSingle__Cldr.ClientId + "__Cldr' ";
	strLblYearDHTML+="name='SY" + objSingle__Cldr.ClientId + "__Cldr' ";
	strLblYearDHTML+="value='" + objSingle__Cldr.Year + "' ";
	strLblYearDHTML+=">";
	strLblYearDHTML+=objSingle__Cldr.Year;
	strLblYearDHTML+="</span>";
	return (strLblYearDHTML);
}

function CreateBtnPrevNext__Cldr(objSingle__Cldr, lngStep)
{
	var strBtnPrevNextDHTML='';
	var strIconPath;
	var strButtonValue;
	var strButtonName;
	var strButtonStyle;
	var strButtonClass;
	switch (lngStep)
	{
		case -1:
			strIconPath=objSingle__Cldr.btnPrevIconPath;
			strButtonValue=objSingle__Cldr.btnPrevCaption;
			strButtonName="Prev__Cldr";
			strButtonStyle=objSingle__Cldr.btnPrevStyle;
			strButtonClass=objSingle__Cldr.btnPrevClass;
			break;
		case +1:
			strIconPath=objSingle__Cldr.btnNextIconPath;
			strButtonValue=objSingle__Cldr.btnNextCaption;
			strButtonName="Next__Cldr";
			strButtonStyle=objSingle__Cldr.btnNextStyle;
			strButtonClass=objSingle__Cldr.btnNextClass;
			break;
	}
	if (strIconPath!='')
	{
		strBtnPrevNextDHTML+="<a href=\"javascript:ChangeMonth__Cldr('" + objSingle__Cldr.ClientId + "', " + lngStep + ")\">";
		strBtnPrevNextDHTML+="<img src=\"" + strIconPath + "\" ";
		strBtnPrevNextDHTML+="border=0 ";
		strBtnPrevNextDHTML+="/></a>";
	}
	else
	{
		strBtnPrevNextDHTML+="<input type=button ";
		strBtnPrevNextDHTML+="name=\"" + strButtonName + "\" ";
		strBtnPrevNextDHTML+="id=\"" + strButtonName + "\" ";
		strBtnPrevNextDHTML+="value=\"" + strButtonValue + "\" ";
		if (strButtonStyle!='')
			strBtnPrevNextDHTML+="style=\"" + strButtonStyle	+ "\" ";
		if (strButtonClass!='')
			strBtnPrevNextDHTML+="class=\"" + strButtonClass + "\" ";
		strBtnPrevNextDHTML+="onclick=\"javascript:ChangeMonth__Cldr('" + objSingle__Cldr.ClientId + "', " + lngStep + ")\" ";
		strBtnPrevNextDHTML+="/>";
	}
	return (strBtnPrevNextDHTML);
}

function CreateBtnConf__Cldr(objSingle__Cldr)
{
	var strBtnConfDHTML='';
	if (objAlls__Cldr.btnConfIconPath!='')
	{
		strBtnConfDHTML+="<a href=\"javascript:Conf__Cldr('" + objSingle__Cldr.ClientId + "')\">";
		strBtnConfDHTML+="<img src=\"" + objAlls__Cldr.btnConfIconPath + "\" ";
		strBtnConfDHTML+="border=0 ";
		strBtnConfDHTML+="/></a>";
	}
	else
	{
		strBtnConfDHTML+="<input type=button ";
		strBtnConfDHTML+="name=\"btnConfirm__Cldr\" ";
		strBtnConfDHTML+="id=\"btnConfirm__Cldr\" ";
		strBtnConfDHTML+="value=\"" + objAlls__Cldr.btnConfCaption + "\" ";
		if (objAlls__Cldr.btnConfStyle!='')
			strBtnConfDHTML+="style=\"" + objAlls__Cldr.btnConfStyle	+ "\" ";
		if (objAlls__Cldr.btnConfClass!='')
			strBtnConfDHTML+="class=\"" + objAlls__Cldr.btnConfClass + "\" ";
		strBtnConfDHTML+="onclick=\"javascript:Conf__Cldr('" + objSingle__Cldr.ClientId + "')\" ";
		strBtnConfDHTML+="/>";
	}
	return (strBtnConfDHTML);
}

function CreateBtnCanc__Cldr()
{
	var strBtnCancDHTML='';
	if (objAlls__Cldr.btnCancIconPath!='')
	{
		strBtnCancDHTML+="<a href=\"javascript:Canc__Cldr()\">";
		strBtnCancDHTML+="<img src=\"" + objAlls__Cldr.btnCancIconPath + "\" ";
		strBtnCancDHTML+="border=0 ";
		strBtnCancDHTML+="/></a>";
	}
	else
	{
		strBtnCancDHTML+="<input type=button ";
		strBtnCancDHTML+="name=\"btnCancel__Cldr\" ";
		strBtnCancDHTML+="id=\"btnCancel__Cldr\" ";
		strBtnCancDHTML+="value=\"" + objAlls__Cldr.btnCancCaption + "\" ";
		if (objAlls__Cldr.btnCancStyle!='')
			strBtnCancDHTML+="style=\"" + objAlls__Cldr.btnCancStyle	+ "\" ";
		if (objAlls__Cldr.btnCancClass!='')
			strBtnCancDHTML+="class=\"" + objAlls__Cldr.btnCancClass + "\" ";
		strBtnCancDHTML+="onclick=\"javascript:Canc__Cldr()\" ";
		strBtnCancDHTML+="/>";
	}
	return (strBtnCancDHTML);
}

function ChangePage__Cldr(strClientId){
	var objDay;
	var objForm;
	var lngCounterDay = 0;
	var strValueDay = '';
	var blnExistDay=false;
	var objYears;
	var objMonths;
	var CountDateSelected;
 var firstdaypos;
 var lastdaypos;
	var objSingle__Cldr=eval("obj__" + strClientId );
	objSingle__Cldr.PositionCurrentDay='';
	objSingle__Cldr.StyleCurrentDay='';
	objSingle__Cldr.StyleOldDay='';
	var dtFrom = new Date(objSingle__Cldr.YearFrom, objSingle__Cldr.MonthFrom-1, objSingle__Cldr.DayFrom)
	var dtTo = new Date(objSingle__Cldr.YearTo, objSingle__Cldr.MonthTo-1, objSingle__Cldr.DayTo)
	if (objSingle__Cldr.cmbYearVisible)
	{
		objYears=FindobjSingle__Cldr('lstYears' + objSingle__Cldr.ClientId);
		if ((objYears.type + '') == 'undefined')
			objSingle__Cldr.Year=objYears[objSingle__Cldr.CurrentPanel].options[objYears[objSingle__Cldr.CurrentPanel].selectedIndex].value;
		else
			objSingle__Cldr.Year=objYears.options[objYears.selectedIndex].value;
	}
	else
	{
		objYears = FindobjSingle__Cldr('SY' + objSingle__Cldr.ClientId + '__Cldr');
		objSingle__Cldr.Year=objYears.getAttribute('value');
	}
	if (objSingle__Cldr.cmbMonthVisible)
	{
		objMonths=FindobjSingle__Cldr('lstMonths' + objSingle__Cldr.ClientId);
		if ((objMonths.type + '') == 'undefined')
			objSingle__Cldr.Month=objMonths[objSingle__Cldr.CurrentPanel].options[objMonths[objSingle__Cldr.CurrentPanel].selectedIndex].value;
		else
			objSingle__Cldr.Month=objMonths.options[objMonths.selectedIndex].value;
	}
	else
	{
		objMonths = FindobjSingle__Cldr('SM' + objSingle__Cldr.ClientId + '__Cldr');
		objSingle__Cldr.Month=objMonths.getAttribute('value');
	}
	var firstday = new Date(objSingle__Cldr.Year,objSingle__Cldr.Month-1,1);
	var lastday = new Date(objSingle__Cldr.Year,objSingle__Cldr.Month-1,31);
	if (objAlls__Cldr.SundayFirstDayOfWeek)
		firstdaypos=firstday.getDay()+1;
	else
	{
		firstdaypos=firstday.getDay();
			if (firstdaypos==0)
				firstdaypos=7;

	}
	lastdaypos=lastday.getDate();
	if (lastdaypos != 31)
		lastdaypos=31-lastdaypos+firstdaypos;
	else
		lastdaypos=lastdaypos+firstdaypos;

	for (CountDays = 1; CountDays < 43; CountDays++)
	{
		objDay=FindobjSingle__Cldr('Day' + objSingle__Cldr.ClientId + CountDays);
		objDay.style.cursor='default';
		objDay.style.backgroundColor='';
		objDay.style.color='';
		objDay.enabled=false;
		objDay.innerHTML='&nbsp;'
	}
	for (CountDays = firstdaypos; CountDays < lastdaypos; CountDays++)
	{
		lngCounterDay++;
		objDay=FindobjSingle__Cldr('Day' + objSingle__Cldr.ClientId + CountDays); 
		strValueDay=lngCounterDay
		if (lngCounterDay<10)
			strValueDay='0' + strValueDay;
		var dtDateSelected = new Date(objSingle__Cldr.Year, objSingle__Cldr.Month-1, lngCounterDay)
		if ((dtFrom<=dtDateSelected)&&(dtDateSelected<=dtTo))
		{
			objDay.style.cursor='hand';
			objDay.enabled=true;
		}
		else
			objDay.style.color=objAlls__Cldr.GridDisabledDaysColor;
		objDay.innerHTML=strValueDay;
		if(objSingle__Cldr.DateSelected.length>0)
			for (CountDateSelected = 0; CountDateSelected < objSingle__Cldr.DateSelected.length; CountDateSelected++)
				if (ConvertDateToString__Cldr(dtDateSelected)==objSingle__Cldr.DateSelected[CountDateSelected])
					SetMarkedDay__Cldr(objSingle__Cldr, CountDays);
		if	(lngCounterDay==objSingle__Cldr.Day)
		{
			blnExistDay=true;
			ChangeDay__Cldr(strClientId, CountDays);
		}
	}
	if (!blnExistDay)
		ChangeDay__Cldr(strClientId, CountDays-1);
}

function ChangeMonth__Cldr(strClientId, lngStep){
	var objDay;
	var objYears;
	var lngSelectedYear;
	var objMonths;
	var lngSelectedMonth;
	var objSingle__Cldr=eval("obj__" + strClientId );
	if (objSingle__Cldr.cmbYearVisible)
	{
		objYears = FindobjSingle__Cldr('lstYears' + objSingle__Cldr.ClientId);
		lngSelectedYear=objYears.selectedIndex;
	}
	else
	{
		objYears = FindobjSingle__Cldr('SY' + objSingle__Cldr.ClientId + '__Cldr');
		lngSelectedYear=parseInt(objYears.getAttribute('value'), 10);
	}
	if (objSingle__Cldr.cmbMonthVisible)
	{
		objMonths=FindobjSingle__Cldr('lstMonths' + objSingle__Cldr.ClientId);
		lngSelectedMonth=objMonths.selectedIndex + lngStep;
		if (lngSelectedMonth==-1)
		{
			objMonths.selectedIndex=objMonths.length-1;
			lngSelectedYear += lngStep;
			if (objSingle__Cldr.cmbYearVisible)
				if (lngSelectedYear==-1)
					objYears.selectedIndex=objYears.length-1;
				else
					objYears.selectedIndex=lngSelectedYear;
			else
				if (lngSelectedYear==(objSingle__Cldr.YearFrom - 1))
				{
					objYears.setAttribute('value',objSingle__Cldr.YearTo);
					objYears.innerHTML=objSingle__Cldr.YearTo;
				}
				else
				{
					objYears.setAttribute('value',lngSelectedYear);
					objYears.innerHTML=lngSelectedYear;
				}
		}
		else
			if (lngSelectedMonth==objMonths.length)
			{
				objMonths.selectedIndex=0;
				if (objSingle__Cldr.cmbYearVisible)
					objYears.selectedIndex=(objYears.selectedIndex + lngStep) % objYears.length;
				else
				{
					lngSelectedYear += lngStep;
					if ((lngSelectedYear)==(objSingle__Cldr.YearTo+ 1))
					{
						objYears.setAttribute('value',objSingle__Cldr.YearFrom);
						objYears.innerHTML=objSingle__Cldr.YearFrom;
					}
					else
					{
						objYears.setAttribute('value',lngSelectedYear);
						objYears.innerHTML=lngSelectedYear;
					}
				}
			}
			else
				objMonths.selectedIndex=lngSelectedMonth;
	}
	else
	{
		objMonths = FindobjSingle__Cldr('SM' + objSingle__Cldr.ClientId + '__Cldr');
		lngSelectedMonth=parseInt(objMonths.getAttribute('value'), 10) + lngStep;
		if (lngSelectedMonth==(objSingle__Cldr.MonthFrom - 1))
		{
			objMonths.setAttribute('value', objSingle__Cldr.MonthTo);
			lngSelectedYear += lngStep;
			if (objSingle__Cldr.cmbYearVisible)
				if (lngSelectedYear==-1)
					objYears.selectedIndex=objYears.length-1;
				else
					objYears.selectedIndex=lngSelectedYear;
			else
				if (lngSelectedYear==(objSingle__Cldr.YearFrom - 1))
				{
					objYears.setAttribute('value',objSingle__Cldr.YearTo);
					objYears.innerHTML=objSingle__Cldr.YearTo;
				}
				else
				{
					objYears.setAttribute('value',lngSelectedYear);
					objYears.innerHTML=lngSelectedYear;
				}
		}
		else
			if (lngSelectedMonth==(objSingle__Cldr.MonthTo + 1))
			{
				objMonths.setAttribute('value',objSingle__Cldr.MonthFrom);
				if (objSingle__Cldr.cmbYearVisible)
					objYears.selectedIndex=(objYears.selectedIndex + lngStep) % objYears.length;
				else
				{
					lngSelectedYear += lngStep;
					if (lngSelectedYear==(objSingle__Cldr.YearTo + 1))
					{
						objYears.setAttribute('value',objSingle__Cldr.YearFrom);
						objYears.innerHTML=objSingle__Cldr.YearFrom;
					}
					else
					{
						objYears.setAttribute('value',lngSelectedYear);
						objYears.innerHTML=lngSelectedYear;
					}
				}
			}
			else
				objMonths.setAttribute('value',lngSelectedMonth);
		objMonths.innerHTML = objAlls__Cldr.MonthName[parseInt(objMonths.getAttribute('value'), 10) - 1];
	}
	ChangePage__Cldr(objSingle__Cldr.ClientId);
}

function ChangeDay__Cldr(strClientId, strPositionDay){
	var objSingle__Cldr=eval("obj__" + strClientId );
	if (SetNewDay__Cldr(objSingle__Cldr, strPositionDay))
		ResetOldDay__Cldr(objSingle__Cldr, strPositionDay);
}

function SelectDay__Cldr(strClientId, strPositionDay){
	ChangeDay__Cldr(strClientId, strPositionDay);
	if (!objAlls__Cldr.btnConfirm)
		Conf__Cldr(strClientId)
}

function SetMarkedDay__Cldr(objSingle__Cldr, strPositionDay){
	var strValueDay='';
	var objDay=FindobjSingle__Cldr('Day' + objSingle__Cldr.ClientId + strPositionDay);
	var lngMarkedSelectedDay=parseInt(objDay.innerHTML, 10);
	if ((!isNaN(lngMarkedSelectedDay))&&(objDay.enabled))
	{
		strValueDay=lngMarkedSelectedDay
		if (lngMarkedSelectedDay<10)
			strValueDay='0' + strValueDay;
		objDay.style.cursor='hand';
		objDay.style.color=objAlls__Cldr.GridMarkedDayColor;
		objDay.innerHTML=strValueDay
		return true;
	}
	else
		return false;
}

function SetNewDay__Cldr(objSingle__Cldr, strPositionDay){
	var strValueDay='';
	var objDay=FindobjSingle__Cldr('Day' + objSingle__Cldr.ClientId + strPositionDay);
	var lngNewSelectedDay=parseInt(objDay.innerHTML, 10);
	if ((!isNaN(lngNewSelectedDay))&&(objDay.enabled))
	{
		strValueDay=lngNewSelectedDay
		if (lngNewSelectedDay<10)
			strValueDay='0' + strValueDay;
		objDay.style.cursor='hand';
		objSingle__Cldr.Day=lngNewSelectedDay;
		objSingle__Cldr.StyleOldDay=objSingle__Cldr.StyleCurrentDay;
		objSingle__Cldr.StyleCurrentDay=objDay.style.backgroundColor;
		objDay.style.backgroundColor=objAlls__Cldr.GridCurrentDayBackColor;
		objDay.innerHTML=strValueDay
		return true;
	}
	else
		return false;
}

function ResetOldDay__Cldr(objSingle__Cldr, strPositionDay){
	var objDayOld;
	if ((objSingle__Cldr.PositionCurrentDay!='')&&(objSingle__Cldr.PositionCurrentDay!=strPositionDay))
	{
		objDayOld=FindobjSingle__Cldr('Day' + objSingle__Cldr.ClientId + objSingle__Cldr.PositionCurrentDay);
		objDayOld.style.backgroundColor=objSingle__Cldr.StyleOldDay;
	}
	objSingle__Cldr.PositionCurrentDay=strPositionDay;
}

function SetTT__Cldr(strClientId){
	var objSingle__Cldr=eval("obj__" + strClientId );
	var objSourceInput=FindobjSingle__Cldr(strClientId);
	if (objSingle__Cldr.ToolTipAutomatic) 
	{
		var dtInputDate=ConvertStringToDate__Cldr(objSourceInput.value);
		if (dtInputDate!='')
		{
			var strToolTipDate=dtInputDate.getDate();
			strToolTipDate+=' ' + objAlls__Cldr.MonthName[dtInputDate.getMonth()];
			strToolTipDate+=' ' + dtInputDate.getFullYear();
			objSourceInput.title=strToolTipDate;
		}
		else
			objSourceInput.title=objSingle__Cldr.ToolTip;
	}
	else
		objSourceInput.title=objSingle__Cldr.ToolTip;
}

function OnC__Cldr(strClientId, objInputBoxDate){
	var objSingle__Cldr=eval("obj__" + strClientId );
	var dtInputBoxDate=ConvertStringToDate__Cldr(objInputBoxDate.value);
	if (dtInputBoxDate!='')
		objInputBoxDate.value=ConvertDateToString__Cldr(dtInputBoxDate);
	SetTT__Cldr(strClientId)
	eval(objSingle__Cldr.CommandForOnChange)
}

function Conf__Cldr(strClientId){
	var objSingle__Cldr=eval("obj__" + strClientId );
	var dtConfirmationDate=new Date(objSingle__Cldr.Year, objSingle__Cldr.Month -1, objSingle__Cldr.Day);
	var objSourceInput=FindobjSingle__Cldr(strClientId);
	objSourceInput.value=ConvertDateToString__Cldr(dtConfirmationDate);
	if(!objSingle__Cldr.Expanded)
		Canc__Cldr();
	SetTT__Cldr(strClientId)
	eval(objSingle__Cldr.CommandForOnChange)
}

function Canc__Cldr(){
	var objSpan=FindobjSingle__Cldr('S__Cldr');
	objSpan.innerHTML="";
}

function Res__Cldr(strClientId){
	var objSingle__Cldr=eval("obj__" + strClientId );
	var objSourceInput=FindobjSingle__Cldr(strClientId);
	objSourceInput.value='';
	var objSpan=FindobjSingle__Cldr('S__Cldr');
	objSpan.innerHTML="";
	SetTT__Cldr(strClientId)
	eval(objSingle__Cldr.CommandForOnChange)
}

function isDate__Cldr(strDateInput)
{
	var lIdx ;
	var arrTokensDefinition = new Array();
	var arrTokensDate = new Array();
	if (strDateInput)
	{
		arrTokensDefinition = objAlls__Cldr.ShortDatePattern.split(objAlls__Cldr.DateSeparator);
		arrTokensDate = strDateInput.split(objAlls__Cldr.DateSeparator);
		if (arrTokensDefinition.length != 3 || arrTokensDate.length != 3)
			return (false);
		for (lIdx = 0; lIdx < 3; lIdx++)
		{
			var strTokenDefinition = arrTokensDefinition[lIdx].toString().toLowerCase();
			var lngTokenDate = parseInt(arrTokensDate[lIdx].toString().toLowerCase(), 10);
			if (isNaN(lngTokenDate))
				return (false);
			if (strTokenDefinition == "dd")
				if (lngTokenDate < 1 || lngTokenDate > 31)
					return (false);
			if (strTokenDefinition == "mm")
				if (lngTokenDate < 1 || lngTokenDate > 12)
					return (false);
			if (strTokenDefinition == "yyyy")
				if (lngTokenDate.toString().length > 4)
					return (false);
		}
		return (true);
	}
	else
		return (false);
}

function External_CheckCalendarValue__Cldr(strDateInput)
{
	return (isDate__Cldr(strDateInput));
}

function External_CheckCalendarRange__Cldr(strFirstDate, strSecondDate, blnCompareForEqual)
{
	var blnRange;
	var strCompareForEqual=blnCompareForEqual + '';
	if(strCompareForEqual.toLowerCase() == 'undefined')
		blnCompareForEqual=true;
	var dtFirstDate=ConvertStringToDate__Cldr(strFirstDate);
	var dtSecondDate=ConvertStringToDate__Cldr(strSecondDate);
	if ((Trim__Cldr(dtFirstDate.toString())=='')||(Trim__Cldr(dtSecondDate.toString())==''))
		blnRange=true;
	else
	{
		if (dtFirstDate<dtSecondDate)
			blnRange=true;
		else
			blnRange=false;
		if ((blnCompareForEqual)&&(Trim__Cldr(dtFirstDate.toString())==Trim__Cldr(dtSecondDate.toString())))
			blnRange=true;
	}
	return (blnRange);
}

function ConvertStringToDate__Cldr(strDateInput)
{
	if (isDate__Cldr(strDateInput))
	{
		var lngDay ;
		var lngMonth ;
		var lngYear ;
		var lIdx ;
		var arrTokensDefinition = new Array();
		var arrTokensDate = new Array();
		arrTokensDefinition = objAlls__Cldr.ShortDatePattern.split(objAlls__Cldr.DateSeparator);
		arrTokensDate = strDateInput.split(objAlls__Cldr.DateSeparator);
		if (arrTokensDefinition.length != 3 || arrTokensDate.length != 3)
			return "";
		for (lIdx = 0; lIdx < 3; lIdx++)
		{
			var strTokenDefinition = arrTokensDefinition[lIdx].toString().toLowerCase();
			var lngTokenDate = parseInt(arrTokensDate[lIdx].toString().toLowerCase(), 10);
			if (strTokenDefinition == "dd")
				lngDay = lngTokenDate;  
			if (strTokenDefinition == "mm")
				lngMonth = lngTokenDate - 1;  
			if (strTokenDefinition == "yyyy")
			{
				lngYear = lngTokenDate;  
				if (lngYear.toString().length < 4)
				if (lngYear.toString().length == 3)
					lngYear += 1000;  
				else  
					if ((objAlls__Cldr.CenturyMinRange<=lngYear)&&(lngYear<=objAlls__Cldr.CenturyMaxRange))
						lngYear += objAlls__Cldr.centuryInRange;  
					else  
						lngYear += objAlls__Cldr.CenturyOutOfRange;  
			}  
		}  
		var dtRetOkDate;
		try
		{
			dtRetOkDate = new Date(lngYear,lngMonth,lngDay)
		}
		catch (e)
		{
			return "";
		}  
		return (dtRetOkDate);
	}

	else

		return "";
}

function ConvertDateToString__Cldr(dtDateInput)
{
	var lngDay = dtDateInput.getDate();
	var lngMonth = dtDateInput.getMonth() + 1;
	var lngYear = dtDateInput.getFullYear();
	var lIdx;
	var arrTokensDefinition = new Array();
	var strOutputDate = "";
	arrTokensDefinition = objAlls__Cldr.ShortDatePattern.split(objAlls__Cldr.DateSeparator);
	if (arrTokensDefinition.length != 3)
		return (strOutputDate);
	for (lIdx = 0; lIdx < 3; lIdx++)
	{
		var strTokenDefinition = arrTokensDefinition[lIdx].toString().toLowerCase();
		if (strTokenDefinition == "dd")
		{
			if (strOutputDate.length > 0) 
				strOutputDate += objAlls__Cldr.DateSeparator;
			if (lngDay<10)
				strOutputDate += '0';
			strOutputDate += lngDay.toString();
		}
		if (strTokenDefinition == "mm")
		{
			if (strOutputDate.length > 0) 
				strOutputDate += objAlls__Cldr.DateSeparator;
			if (lngMonth<10)
				strOutputDate += '0';
			strOutputDate += lngMonth.toString();
		}
		if (strTokenDefinition == "yyyy")
		{
			if (strOutputDate.length > 0) 
				strOutputDate += objAlls__Cldr.DateSeparator;
			strOutputDate += lngYear.toString();  
		}
	}
	return (strOutputDate);
}

var registerSpan=false;
var registerScript=false;


function d3_calendar(name,
										 date,
										 monthNames,
										 dayNames,
										 dateSelected,
										 from,
										 to,
										 onChange,
										 imagePath,
										 expanded
										 )
{

	if (typeof(monthNames)+''=='undefined') monthNames=null;
	if (typeof(dayNames)+''=='undefined') dayNames=null;
	
	// images
	if (typeof(imagePath)+''=='undefined') imagePath=null;
	if (imagePath) 
		objAlls__Cldr.btnCancIconPath=imagePath + "cal_Cancel.gif"
	else	
		objAlls__Cldr.btnCancCaption="X"; 
	
	// day
	var	noDate=true;
	if (typeof(date)+''=='undefined') date=null
	if (isDate__Cldr(date))
	{
		noDate=false;
		var dtInputBoxDate=ConvertStringToDate__Cldr(date);
	}	

	if (noDate)
	{
		date="";
		var dtInputBoxDate=new Date();
		var tooltip="";
	}
	var day=dtInputBoxDate.getDate();
	var month=dtInputBoxDate.getMonth() + 1;
	var year=dtInputBoxDate.getFullYear();
	if (!noDate)
		var tooltip=day + " " + monthNames[month-1] + " " + year;

	// day from
	if (typeof(from)+''=='undefined') from=null
	if (isDate__Cldr(from))
	{	
		var dtInputBoxDateFrom=ConvertStringToDate__Cldr(from);
		var dayFrom=dtInputBoxDateFrom.getDate();
		var monthFrom=dtInputBoxDateFrom.getMonth() + 1;
		var yearFrom=dtInputBoxDateFrom.getFullYear();
	}
	else
	{
		var dtInputBoxDateFrom=new Date();
		var dayFrom=1;
		var monthFrom=1;
		var yearFrom=dtInputBoxDateFrom.getFullYear()-100;
	}

	// day to		
	if (typeof(to)+''=='undefined') to=null
	if (isDate__Cldr(to))
	{	
		var dtInputBoxDateTo=ConvertStringToDate__Cldr(to);
		var dayTo=dtInputBoxDateTo.getDate();
		var monthTo=dtInputBoxDateTo.getMonth() + 1;
		var yearTo=dtInputBoxDateTo.getFullYear();
	}
	else
	{
		var dtInputBoxDateTo=new Date();
		var dayTo=31;
		var monthTo=12;
		var yearTo=dtInputBoxDateTo.getFullYear() + 50;
	}

	eval("obj__" + name + "=new Object();");
	var objSingle__Cldr=new Object();
	
	objSingle__Cldr=eval("obj__" + name);
	objSingle__Cldr.ClientId=name; 
	objSingle__Cldr.PositionCurrentDay=""; 
	objSingle__Cldr.StyleCurrentDay=""; 
	objSingle__Cldr.StyleOldDay=""; 
	objSingle__Cldr.DefaultDate=""; 
	objSingle__Cldr.Day=day; 
	objSingle__Cldr.DayFrom=dayFrom; 
	objSingle__Cldr.DayTo=dayTo; 
	objSingle__Cldr.Month=month; 
	objSingle__Cldr.lngFirstMonth=1; 
	objSingle__Cldr.lngLastMonth=12; 
	objSingle__Cldr.MonthFrom=monthFrom; 
	objSingle__Cldr.MonthTo=monthTo; 
	objSingle__Cldr.cmbMonthVisible=false; 
	objSingle__Cldr.cmbMonthDisabled=false; 
	objSingle__Cldr.cmbMonthStyle=""; 
	objSingle__Cldr.cmbMonthClass="calendarControl"; 
	objSingle__Cldr.Year=year; 
	objSingle__Cldr.YearFrom=yearFrom; 
	objSingle__Cldr.YearTo=yearTo; 
	objSingle__Cldr.cmbYearVisible=false; 
	objSingle__Cldr.cmbYearDisabled=false; 
	objSingle__Cldr.cmbYearStyle=""; 
	objSingle__Cldr.cmbYearClass="calendarControl"; 
	objSingle__Cldr.btnPrevious=true;
	objSingle__Cldr.btnPrevIconPath=""; 
	objSingle__Cldr.btnPrevCaption=""; 
	if (imagePath) 
		objSingle__Cldr.btnPrevIconPath=imagePath + "cal_Prev.gif"; 
	else
		objSingle__Cldr.btnPrevCaption="<"; 
	objSingle__Cldr.btnPrevStyle=""; 
	objSingle__Cldr.btnPrevClass=""; 
	objSingle__Cldr.btnNext=true; 
	objSingle__Cldr.btnNextCaption=""; 
	objSingle__Cldr.btnNextIconPath="";
	if (imagePath) 
		objSingle__Cldr.btnNextIconPath=imagePath + "cal_Next.gif"; 
	else
		objSingle__Cldr.btnNextCaption=">"; 
	objSingle__Cldr.btnNextStyle=""; 
	objSingle__Cldr.btnNextClass=""; 
	objSingle__Cldr.PositionKind="relative"; 
	objSingle__Cldr.Top=0; 
	objSingle__Cldr.Left=0; 
	if (typeof(onChange)+''=='undefined') onChange="";
	objSingle__Cldr.CommandForOnChange=onChange; 
	if (typeof(expanded)+''=='undefined' || expanded==null || expanded==false) objSingle__Cldr.Expanded=false;
	else objSingle__Cldr.Expanded=true; 
	objSingle__Cldr.ToolTip=""; 
	objSingle__Cldr.ToolTipAutomatic=true; 
	if (typeof(dateSelected)+''=='undefined') dateSelected=null;
	if (!dateSelected) dateSelected=new Array(); 
	objSingle__Cldr.DateSelected=dateSelected; 

	document.open();
	var strHtml="";
	if (objSingle__Cldr.Expanded)
		strHtml='<input type="hidden" name="' + name + '" id="' + name + '" value="' + date + '">';
	else
	{
		strHtml="<table border=0 cellpadding=0 cellspacing=0> <tr><td><input ";
		if (objAlls__Cldr.txtDateClass!="")
			strHtml+="class=\"" + objAlls__Cldr.txtDateClass + "\" "
		strHtml+=" name=\"" + name + "\" id=\"" + name + "\" value=\"" + date + "\" onchange=\"javascript:OnC__Cldr('" + name + "', this)\" type='text' size='12' title=\"" + tooltip + "\" READONLY_ ></td>";
		if(imagePath)	
			strHtml+="<td vAlign=\"middle\">&nbsp;<a onmouseover=\"this.style.cursor='hand'\" onclick=\"javascript:Open__Cldr('" + name + "', event)\"><img src=\""+ imagePath +"cal_Open.gif\" border='0' align='absmiddle'/></a></td><td vAlign=\"middle\">&nbsp;<a href=\"javascript:Res__Cldr('" + name + "')\"><img src=\""+ imagePath +"cal_Reset.gif\" border='0' align='absmiddle'/></a></td>";
		else	
			strHtml+="<td>&nbsp;<input type='button' name=\"btnSet" + name + "\" id=\"btnSet" + name + "\" value=\"...\" class=\"calendarControl\" onclick=\"javascript:Open__Cldr('" + name + "', event)\" /></td><td>&nbsp;<input type='button' name=\"btnReset" + name + "\" id=\"btnReset" + name + "\" value=\"#\" class=\"calendarControl\" onclick=\"javascript:Res__Cldr('" + name + "')\" />*</td>";
		strHtml+="</tr></table>";

		if (!registerSpan)
		{	
			strHtml+="<span style=\"position:absolute;width:1;height:1\" id=\"S__Cldr\" ></span>"
			registerSpan=true;
		}
	}		
	if (!registerScript)
	{	
		if (!monthNames)
		{
			monthNames=new Array(12); 
			monthNames[0]="Jan"; 
			monthNames[1]="Feb"; 
			monthNames[2]="Mar"; 
			monthNames[3]="Apr"; 
			monthNames[4]="May"; 
			monthNames[5]="Jun"; 
			monthNames[6]="Jul"; 
			monthNames[7]="Aug"; 
			monthNames[8]="Sep"; 
			monthNames[9]="Oct"; 
			monthNames[10]="Nov"; 
			monthNames[11]="Dec"; 
		}	
		objAlls__Cldr.MonthName=monthNames; 
		if (!dayNames)
		{
			dayNames=new Array(7); 
			dayNames[0]="M"; 
			dayNames[1]="T"; 
			dayNames[2]="W"; 
			dayNames[3]="T"; 
			dayNames[4]="F"; 
			dayNames[5]="S"; 
			dayNames[6]="S"; 
		}	
		objAlls__Cldr.DayName=dayNames; 
		registerScript=true;
	}	
	
	
	if (document.getElementById(name+"_Area")) {
		document.getElementById(name+"_Area").innerHtml = strHtml;
	}

	document.writeln(strHtml);
	  if (objSingle__Cldr.Expanded) 
	  {
		  document.writeln(Open__Cldr(name, event));
		  Init__Cldr(objSingle__Cldr.ClientId);
	  }			
	document.close();
}

var objAlls__Cldr=new Object(); 
objAlls__Cldr.CenturyMinRange=20; 
objAlls__Cldr.CenturyMaxRange=99; 
objAlls__Cldr.centuryInRange=1900; 
objAlls__Cldr.CenturyOutOfRange=2000; 
objAlls__Cldr.ShortDatePattern="dd.MM.yyyy"; 
objAlls__Cldr.DateSeparator="."; 
objAlls__Cldr.Style=""; 
objAlls__Cldr.Class="calendarWindow"; 
objAlls__Cldr.BorderColor="#cecece"; 
objAlls__Cldr.BackColor="#cecece"; 
objAlls__Cldr.HTMLTop=""; 
objAlls__Cldr.HTMLBottom=""; 
objAlls__Cldr.SundayFirstDayOfWeek=false; 
objAlls__Cldr.GridBorderColor="#D4D0C8"; 
objAlls__Cldr.GridBackColor="White"; 
objAlls__Cldr.GridDisabledDaysColor="#D4D0C8"; 
objAlls__Cldr.GridCurrentDayBackColor="#D4D0C8"; 
objAlls__Cldr.GridMarkedDayColor="Red"; 
objAlls__Cldr.GridClass="calendarGrid"; 
objAlls__Cldr.btnConfirm=false; 
objAlls__Cldr.btnConfIconPath=""; 
objAlls__Cldr.btnConfCaption=""; 
objAlls__Cldr.btnConfStyle=""; 
objAlls__Cldr.btnConfClass=""; 
objAlls__Cldr.btnCancel=true; 
objAlls__Cldr.btnCancIconPath=""; 
objAlls__Cldr.btnCancCaption=""; 
objAlls__Cldr.btnCancStyle=""; 
objAlls__Cldr.btnCancClass="calendarControl"; 
objAlls__Cldr.txtDateClass="calendarControl"; 

				var arrMonthName=new Array();
				
				arrMonthName[0]="January";
				arrMonthName[1]="February"; 
				arrMonthName[2]="March"; 
				arrMonthName[3]="April"; 
				arrMonthName[4]="May"; 
				arrMonthName[5]="June"; 
				arrMonthName[6]="July"; 
				arrMonthName[7]="August"; 
				arrMonthName[8]="September"; 
				arrMonthName[9]="October"; 
				arrMonthName[10]="November"; 
				arrMonthName[11]="December"

				var arrDayName=new Array(); 
				
				arrDayName[0]="M"; 
				arrDayName[1]="T"; 
				arrDayName[2]="W"; 
				arrDayName[3]="T"; 
				arrDayName[4]="F"; 
				arrDayName[5]="S"; 
				arrDayName[6]="S"; 

var arrDateSelected=new Array();
var i
i = 0 
 
	arrDateSelected[i] = '12.06.2004';
i++
 
	arrDateSelected[i] = '13.06.2004';
i++
 
	arrDateSelected[i] = '14.06.2004';
i++
 

function btnManage_onchange(strbtnValue)	 
{
//	if (CheckSel(strbtnValue))
//	{
//		document.PlayerSearch.btnAction.value = strbtnValue;
//		document.PlayerSearch.submit();	 	
//	}	
}				

/* functions for Calendar date validation (5) */

function isInteger(s) {
	var i;
    for (i = 0; i < s.length; i++){   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag){
	var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function daysInFebruary (year){
	// February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n) {
	for (var i = 1; i <= n; i++) {
		this[i] = 31
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		if (i==2) {this[i] = 29}
   } 
   return this
}

function isDate(dtStr){

	var dtCh= ".";
	var minYear=1900;
	var maxYear=2100;
	
	var daysInMonth = DaysArray(12)
	var pos1=dtStr.indexOf(dtCh)
	var pos2=dtStr.indexOf(dtCh,pos1+1)
	var strDay=dtStr.substring(0,pos1)
	var strMonth=dtStr.substring(pos1+1,pos2)
	var strYear=dtStr.substring(pos2+1)
	strYr=strYear
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
	for (var i = 1; i <= 3; i++) {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
	}
	month=parseInt(strMonth)
	day=parseInt(strDay)
	year=parseInt(strYr)
	if (pos1==-1 || pos2==-1){
		alert("The date format should be : dd.mm.yyyy");
		return false;
	}
	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		alert("Please enter a valid day");
		return false;
	}
	if (strMonth.length<1 || month<1 || month>12){
		alert("Please enter a valid month");
		return false;
	}
	if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){
		alert("Please enter a valid 4 digit year between "+minYear+" and "+maxYear);
		return false;
	}
	if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
		alert("Please enter a valid date");
		return false;
	}
	return true;
}


function DeleteRecord(RecAction, IDParam, ExtraParams) {

	if (window.confirm('Are you sure you want to delete this record?')) {
		var LocUrl = ExtraParams+"&recaction="+RecAction+IDParam;
		location.replace(LocUrl);
	}
}


/* ticker functions */

function fChangeTickerEntry() {
	nTickerToShow = nTickerToShow + 1;
	if (nTickerToShow >= aTickerText.length) {
		nTickerToShow = 0;
	}

	var eTicker = document.getElementById('ticker');
	var sHTML = '<a class="title" href="' + aTickerUrl[nTickerToShow] +'">' + aTickerText[nTickerToShow] +  '</a>';
	eTicker.innerHTML = sHTML;
}

function fChangeTickerBlockEntry() {
	nTickerBlockToShow = nTickerBlockToShow + 1;
	if (nTickerBlockToShow >= aTickerBody.length) {
		nTickerBlockToShow = 0;
	}

	var eTicker = document.getElementById('rotate_articles');
	var sHTML = aTickerBody[nTickerBlockToShow];
	eTicker.innerHTML = sHTML;
}
/* end ticker functions */


function changeMobFontSizeLang(theFontParam, theQueryString) {
  lochref = '';
	// Check if already lang parameter is sent
	if (theQueryString.match('fsize=') != null) {
		langPos = theQueryString.indexOf('fsize=');
		theQueryString = theQueryString.substring(0,(langPos-1))+theQueryString.substring((langPos-1)+8);
	}
	// Check all parameters that 'index.php' files handles
	if (theQueryString != '') {
		lochref = 'mobile.php?'+theQueryString+'&fsize='+theFontParam;
	} else {
		lochref = 'mobile.php?fsize='+theFontParam;
	}
	location = lochref;
}

/* TOOL IMAGE CROP */
function urlencode(str) {
    str = (str + '').toString();
    return encodeURIComponent(str).replace(/!/g, '%21').replace(/'/g, '%27').replace(/\(/g, '%28').
    replace(/\)/g, '%29').replace(/\*/g, '%2A').replace(/%20/g, '+');
}

function DisplayImageCropBlock(theRecId, theSct, theParentFolder, theFolder, theSourceImg, theDesImg, theBigImgW, theBigImgH, theCropImgW, theCropImgH, theReturnUrl){ 

  if (document.getElementById("image_block_bg")) {
	 document.getElementById("image_block_bg").style.display = "block";
   	 document.getElementById("image_block_bg").style.width = (parseInt(f_clientWidth(),10)-4);
   	 document.getElementById("image_block_bg").style.height = ((parseInt(f_clientHeight(), 10)+parseInt(getScrollXY(), 10))+2);
   }
   if (document.getElementById("edit_image_block")) {
  	document.getElementById("edit_image_block").style.display = "block";
   }
   
   if (document.getElementById("edit_image_block_fr")) {
	  var objFrame=document.getElementById("edit_image_block_fr"); 
 	  var queryString = "?ownid="+theRecId+"&sctid="+theSct+"&assetparentfolder="+theParentFolder+"&folder="+theFolder+"&sourceimg="+theSourceImg+"&destimg="+theDesImg+"&s_imgw="+theBigImgW+"&s_imgh="+theBigImgH+"&c_imgw="+theCropImgW+"&c_imgh="+theCropImgH+"&returnurl="+urlencode(theReturnUrl);
	  objFrame.src= "tools/crop_image/index.php"+queryString; 
	  
	  var theFrameMaxW = ((parseInt(theBigImgW, 10))+(parseInt(theCropImgW, 10))+30);
	  var theFrameMaxH = (parseInt(theBigImgH, 10)+10);
	  objFrame.style.width = theFrameMaxW+"px";
	  objFrame.style.height = theFrameMaxH+"px";
	  //document.frames['objFrame'].location.reload(true);
   }
}

function HideImageCropBlock(){ 
  if (document.getElementById("image_block_bg")) {
	  document.getElementById("image_block_bg").style.display = "none";
  }
  if (document.getElementById("edit_image_block")) {
	  document.getElementById("edit_image_block").style.display = "none";
  }
  history.go(-1);
}

//for crop window
function f_clientWidth() {
	return f_filterResults (
		window.innerWidth ? window.innerWidth : 0,
		document.documentElement ? document.documentElement.clientWidth : 0,
		document.body ? document.body.clientWidth : 0
	);
}
function f_clientHeight() {
	return f_filterResults (
		window.innerHeight ? window.innerHeight : 0,
		document.documentElement ? document.documentElement.clientHeight : 0,
		document.body ? document.body.clientHeight : 0
	);
}
function f_scrollLeft() {
	return f_filterResults (
		window.pageXOffset ? window.pageXOffset : 0,
		document.documentElement ? document.documentElement.scrollLeft : 0,
		document.body ? document.body.scrollLeft : 0
	);
}
function f_scrollTop() {
	return f_filterResults (
		window.pageYOffset ? window.pageYOffset : 0,
		document.documentElement ? document.documentElement.scrollTop : 0,
		document.body ? document.body.scrollTop : 0
	);
}
function f_filterResults(n_win, n_docel, n_body) {
	var n_result = n_win ? n_win : 0;
	if (n_docel && (!n_result || (n_result > n_docel)))
		n_result = n_docel;
	return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
}

function getScrollXY() {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
    scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
    scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
    scrOfX = document.documentElement.scrollLeft;
  }
  return scrOfY;
}


function findPosY(obj) {
  var curtop = 0;
  if(obj.offsetParent)
	  while(1)
	  {
		curtop += obj.offsetTop;
		if(!obj.offsetParent)
		  break;
		obj = obj.offsetParent;
	  }
  else if(obj.y)
	  curtop += obj.y;
  return curtop;
}

function findPosX(obj) {
  var curleft = 0;
  if(obj.offsetParent)
	  while(1) 
	  {
		curleft += obj.offsetLeft;
		if(!obj.offsetParent)
		  break;
		obj = obj.offsetParent;
	  }
  else if(obj.x)
	  curleft += obj.x;
  return curleft;
}

function getScrollWidth()
{
   var w = window.pageXOffset ||
           document.body.scrollLeft ||
           document.documentElement.scrollLeft;
           
   return w ? w : 0;
} 

function getScrollHeight()
{
   var h = window.pageYOffset ||
           document.body.scrollTop ||
           document.documentElement.scrollTop;
           
   return h ? h : 0;
}

function ShowHideGalleryImages(ImgId, ImgDescrNum) {
  if (document.getElementById("gal_photos_"+ImgId)) {
	 var CurStyle = document.getElementById("gal_photos_"+ImgId).style.display;
	 if (CurStyle == "block") {
		 document.getElementById("gal_photos_"+ImgId).style.display = "none";
		 document.getElementById("gal_imgs_btn_"+ImgId).src = "layout/images/view_btn.gif";
		 //document.getElementById("BtnTxt_"+ImgId).innerHTML = "View";
		 //document.getElementById("artimg_descr_"+ImgDescrNum).style.display = "none";
	 } else {
		 document.getElementById("gal_photos_"+ImgId).style.display = "block";
		 document.getElementById("gal_imgs_btn_"+ImgId).src = "layout/images/close_btn.gif";
		 //document.getElementById("BtnTxt_"+ImgId).innerHTML = "Close";
		 //document.getElementById("artimg_descr_"+ImgDescrNum).style.display = "block";
	 }
  }
	
}

/********************** CONTROL PANEL FUNCTIONS **************************/

function BlocksDisplayHide(BlockNum) {
	if ($("#Block"+BlockNum+"Body").is(':hidden')) {
		$("#Block"+BlockNum+"Body").show(500);
	} else {
		$("#Block"+BlockNum+"Body").hide();
	}
}

function RecordsAction() {
	var Action = $("#RecordsAction").val();
	if (Action == 'V') {
		UpdatePrgsVisibleStatus('', 'Y', 'M');
	} else if (Action == 'NV') {
		UpdatePrgsVisibleStatus('', 'N', 'M');
	} 
	/* RESET VALUES */
	$("#RecordsAction").val("");
	$("#selector").attr("checked", false);
	$("input[id=ListObjectID]").each( function() {
		if( $(this).is(':checked') ) {
			$(this).attr("checked", false);   
		}
	});
}

function UpdatePrgsVisibleStatus(theId, theStatus, SorM) {
	var IdsParam;
	if (SorM == 'S') {
	  IdsParam = theId;
	} else {
	  var theSelectedIds = [];
	  $("input[id=ListObjectID]").each( function() {
		  if( $(this).is(':checked') ) {
			  theSelectedIds.push($(this).val());   
		  }
	  });
	  IdsParam = theSelectedIds.join('|');
	}
	
	jQuery.ajax({ 
	  type: "GET",
	  url: "modules/ws_mod_tvg_01/reporter/programs/change_visibility.php",
	  data: "ids="+IdsParam+"&status="+theStatus+"&sid="+Math.random(),
	  success: function(response){
		var ResIds = response.split("|");
		for(var k=0;k<ResIds.length;k++) {
		  if (theStatus == "N") {
			  $('#prg_'+ResIds[k]+'_vis_btn').css("display", "none");
			  $('#prg_'+ResIds[k]+'_notvis_btn').css("display", "block");
		  } else {
			  $('#prg_'+ResIds[k]+'_vis_btn').css("display", "block");
			  $('#prg_'+ResIds[k]+'_notvis_btn').css("display", "none");
		  }
		}
	  }
	});	
}

function ReturnBlockRelatedFile(BlockNum, Case) {
	
	var RelatedFilePath = "";
	switch(BlockNum) {
		case '1':
			RelatedFilePath = 'modules/ws_mod_tvg_01/reporter/tv_guide_promotions/';
			break;
		case '2':
			RelatedFilePath = 'modules/ws_mod_tvg_01/reporter/tv_guide_featured_programs/';
			break;
		case '3': 
			RelatedFilePath = 'modules/ws_mod_tvg_01/reporter/tv_guide_picks/';
			break;
	}
	
	if (RelatedFilePath != "") {
	  switch(Case) {
		  case 'ASSIGN':
		  	  RelatedFilePath = RelatedFilePath + "assign_record.php";
			  break;
		  case 'EDIT':
		  	  RelatedFilePath = RelatedFilePath + "edit_record.php";
			  break;
		  case 'UPDATE':
		  	  RelatedFilePath = RelatedFilePath + "update_body.php";
			  break;
		  case 'VISIBLE':
		  	  RelatedFilePath = RelatedFilePath + "change_visibility.php";
			  break;
		  case 'DELETE':
		  	  RelatedFilePath = RelatedFilePath + "delete_record.php";
			  break;
		  case 'ORDER':
		  	  RelatedFilePath = RelatedFilePath + "reorder_record.php";
			  break;
	  }
	}
	
	return RelatedFilePath;
	
}

function EditRecWindow(BlockNum, theRecId, theExtraParams, PhotoExist) {
	
	var PathToFile = ReturnBlockRelatedFile(BlockNum, 'EDIT');
	if (theExtraParams != '') {
		PathToFile = PathToFile+"?"+theExtraParams;
	}
	
	if (PathToFile != '') {
		$('#image_block_bg').css("display", "block");
		$('#ExtWindowBlock').css("display", "block");
		$('#ExtWindowBlock').load(PathToFile, { rec_id:theRecId, prg_type:$('#prg_type').val(), rand:Math.random() }, function(response, status, xhr) {
			if (status == "error") {     
				alert(xhr.status + " " + xhr.statusText);   
			} else {
			  if (PhotoExist == 'Y') {
				  /* AJAX UPLOAD FILE TOOL : TRY USE THIS FUNCTION OUT OF HERE*/
				  $(document).ready(function(){
					  var thumb = $('img#thumb');	
					  new AjaxUpload('imageUpload', {
						  action: $('form#UploadFileForm').attr('action'),
						  name: 'img_filename',
						  onSubmit: function(file, extension) {
							  $('#messages').text('');
							  if (extension && /^(jpg|png|jpeg|gif|swf|flv)$/.test(extension)){
								/* Setting data */
								this.setData({
									'section': $('#section').val(),
									'folder': $('#folder').val(),
									'rec_id': $('#rec_id').val()
								});	
								$('#pic_loading').css("display", "block");
							  } else {
								  $('#messages').text('Error: Not supported file type');
								  return false;
							  }
						  },
						  onComplete: function(file, response) {
							  var res = response.substr(0,5);
							  if (res == "ERROR") { // != "OK"
								 $('#messages').text(response);
							  } else {
								var theRes = response.split("|");
								/* USE TO UPDATE THE PHOTO SRC */
								$('#rec_photo').val(theRes[0]); //change the value of hidden field to change on save
								$('#filename').val(theRes[0]); //display name of photo
								var photos_up = parseInt($('#photos_uploaded').val(),10);
								$('#photos_uploaded').val(photos_up+1);
  							    thumb.unbind();
								thumb.attr('src', theRes[1]);
								//UpdateBlockBody(BlockNum, theExtraParams); //change on save
								/*************************************/
								/* UPDATE BLOKC not just the img src */
								//EditRecWindow(BlockNum, theRecId, theExtraParams, 'Y');//recall load function
							  }
							  $('#pic_loading').css("display", "none");
						  }
					  });
				  });
			  }
			  /****/
			}
		})
	}
}

function Block01FormValidation() {

	var title = $('#prb_title').val();
	
	if (ValidateStringLength(title) == false) { 
		alert("Enter title");
		return false;
	} else {
		return true;
	}
	
}

function Block02FormValidation() {

	var title = $('#fpr_title').val();
	var f_day = parseInt($('#fpr_from_date_day').val(),10);
	var t_day = parseInt($('#fpr_to_date_day').val(),10);
	
	if (ValidateStringLength(title) == false) { 
		alert("Enter title");
		return false;
	} else if ((ValidateStringLength(f_day+"") == false)||(f_day < 1)||(f_day > 31)||(isNumeric(f_day+"") == false)) {
		alert("Invalid from day");
		return false;
	} else if ((ValidateStringLength(t_day+"") == false)||(t_day < 1)||(t_day > 31)||(isNumeric(t_day+"") == false)) {
		alert("Invalid to day");
		return false;
	} else {
		return true;
	}
	
}

function Block03FormValidation() {

	var title = $('#pck_title').val();
	
	if (ValidateStringLength(title) == false) { 
		alert("Enter title");
		return false;
	} else {
		return true;
	}
	
}

function UpdateRecordInfo(BlockNum, theRecId, theExtraParams) {
	
	var PathToFile = ReturnBlockRelatedFile(BlockNum, 'EDIT');
	
	if (PathToFile != '') {
		
		//validate info
		var ValuesAreValid = false;
		if (BlockNum == '1') {
			ValuesAreValid = Block01FormValidation();
		} else if (BlockNum == '2') {
			ValuesAreValid = Block02FormValidation();
		} else if (BlockNum == '3') {
			ValuesAreValid = Block03FormValidation();
		}
		
		if (ValuesAreValid) {
		
		  //align msg box and diaply message
		  var recs_list_h = parseInt(document.getElementById("EditRecordBlock").scrollHeight, 10);
		  var recs_list_w = parseInt(document.getElementById("EditRecordBlock").scrollWidth, 10);
		  $('#EditRecordBlock').animate({"opacity": .2}, 50);
		  $('#msgbox').css("marginTop", ((recs_list_h/2)-50));
		  $('#msgbox').css("marginLeft", ((recs_list_w/2)-100));
		  $("#msgbox").text('Saving Changes....').fadeIn(1000);	  
		  
		  var str_data = $('#UpdateRecordForm').serialize();
		  if (theExtraParams != '') {
				str_data = str_data+"&"+theExtraParams; 
		  }
		  /*save record*/
		  jQuery.ajax({ 
			type: "POST",
			url: PathToFile,
			data: str_data+"&sid="+Math.random(),
			success: function(response){
			 if (response == "OK") {
				  $("#msgbox").text("Changes saved succesfully").fadeOut(500, function() {
					//EditRecWindow(BlockNum, theRecId, theExtraParams, 'Y');//recall load function
					UpdateBlockBody(BlockNum, theExtraParams);
					CloseAssignRecsWindow(); //close edit window --->
				  });
			  } else {
				  var theRes = response.split("|");
				  if (theRes[0] == 'NEWREC') { //new record Added ==> theRes[1] the new rec_id
					  $("#msgbox").text("Record saved succesfully").fadeOut(500, function() {
						EditRecWindow(BlockNum, theRes[1], theExtraParams, 'Y');//recall load function
						UpdateBlockBody(BlockNum, theExtraParams);
						//CloseAssignRecsWindow();
					  });
				  } else {
					  $("#msgbox").text("Save Failed ("+response+")").fadeOut(3000, function() {
						EditRecWindow(BlockNum, theRecId, theExtraParams, 'Y');//recall load function
					  });
				  }
			  }
			}
		  });
		}
	}
}

function AssignRecsWindow(BlockNum, theExtraParams) {
	
	var PathToFile = ReturnBlockRelatedFile(BlockNum, 'ASSIGN');
	
	if (PathToFile != '') {
		$('#image_block_bg').css("display", "block");
		$('#ExtWindowBlock').css("display", "block");
		$('#ExtWindowBlock').load(PathToFile+"?"+theExtraParams, { prg_type:$('#prg_type').val(),rand:Math.random() }, function(response, status, xhr) {
			if (status == "error") {     
				alert(xhr.status + " " + xhr.statusText);   
			}
		})
	}
}

function CloseAssignRecsWindow() {
	$('#image_block_bg').css("display", "none");
	$('#ExtWindowBlock').css("display", "none");
	$('#ExtWindowBlock').html('<img src="layout/images/loading.gif" border="0" align="center" hspace="0" style="margin-top:15%;" />');
}

function AssignRecords(BlockNum, theExtraParams, CheckBoxesTitle) {
	
	var PathToFile = ReturnBlockRelatedFile(BlockNum, 'ASSIGN');
	var thePrgType = $('#prg_type').val();

	if (PathToFile != '') {
		//GET THE CHECKED IDS
		var checked_num = $("input[title='"+CheckBoxesTitle+"']:checked").length;
		if (checked_num > 0) {
		  //align msg box and diaply message
		  var recs_list_h = parseInt(document.getElementById("RecordsList").scrollHeight, 10);
		  var recs_list_w = parseInt(document.getElementById("RecordsList").scrollWidth, 10);
		  $('#RecordsList').animate({"opacity": .2}, 50);
		  $('#msgbox').css("marginTop", 200/*((recs_list_h/2)-50)*/);
		  $('#msgbox').css("marginLeft", ((recs_list_w/2)-100));
		  $("#msgbox").text('Assigning Records....').fadeIn(1000);	  
		  //get selected checkboxes 
		  var theAssignIds = [];
		  $("input[title='"+CheckBoxesTitle+"']").each( function() {
			  if( $(this).is(':checked') ) {
				  theAssignIds.push( $(this).val());   
			  }
		  });
		  var theAssign_Ids = theAssignIds.join('|');
		  /*assign records*/
		  jQuery.ajax({ 
			type: "POST",
			url: PathToFile,
			data: "assign_values=Y&prgtype="+thePrgType+"&assign_ids="+theAssign_Ids+"&"+theExtraParams+"&sid="+Math.random(),
			success: function(response){
			  if (response == "OK") {
				  $("#msgbox").text("Assignment completed succesfully").fadeOut(500, function() {
					//call function to refreash block list and close assignment block
					CloseAssignRecsWindow();
					UpdateBlockBody(BlockNum, theExtraParams);
				  });
			  } else {
				  $("#msgbox").text("Assignment Failed ("+response+")").fadeOut(3000, function() {
					AssignRecsWindow(BlockNum, theExtraParams);//recall load function
				  });
			  }
			}
		  });
		} else {
			alert("Please select records to assign first");
		}
	}
}

function SelectAllCheckBoxes(CheckBoxesTitle) {
	//$("input[name='checkbox']:not([disabled='disabled'])").attr('checked', true);
	if ($('#selector').is(':checked')) {
		$("input[title='"+CheckBoxesTitle+"']").attr('checked', true);
	} else {
		$("input[title='"+CheckBoxesTitle+"']").attr('checked', false);
	}
}

function UpdateBlockBody(BlockNum, theExtraParams) {

  var PathToFile = ReturnBlockRelatedFile(BlockNum, 'UPDATE');
  
  if (PathToFile != '') {
	  /*DISPLAY BLOCK LOADING */
	  var block_h = parseInt(document.getElementById("Block"+BlockNum+"Body").scrollHeight, 10);
	  var block_w = parseInt(document.getElementById("Block"+BlockNum+"Body").scrollWidth, 10);
	  $('#Block'+BlockNum+'_loading').css("width", block_w);
	  $('#Block'+BlockNum+'_loading').css("height", block_h);
	  $('#Block'+BlockNum+'_loading').css("display", "block");
	  $('#Block'+BlockNum+'_load_img').css("marginTop", ((block_h/2)-25));
	  
	  var thePrgType = $('#prg_type').val();
	  
	  /* UPDATE BLOCK */
	  jQuery.ajax({ 
		type: "GET",
		url: PathToFile,
		data: "sid="+Math.random()+"&prgtype="+thePrgType+"&"+theExtraParams,
		dataType: "html",
		cache: false,
		success: function(response){
			$('#Block'+BlockNum+'Body').html(response);
		}
	  });
  }
}


function ChangeRecVisibility(BlockNum, theRecId, theStatus) {

  var PathToFile = ReturnBlockRelatedFile(BlockNum, 'VISIBLE');
  jQuery.ajax({ 
	type: "GET",
	url: PathToFile,
	data: "sid="+Math.random()+"&id="+theRecId+"&status="+theStatus,
	dataType: "html",
	success: function(response){
		if (response == "N") {
  			$('#Block'+BlockNum+'_'+theRecId+'_vis_btn').css("display", "none");
  			$('#Block'+BlockNum+'_'+theRecId+'_notvis_btn').css("display", "block");
		} else {
  			$('#Block'+BlockNum+'_'+theRecId+'_vis_btn').css("display", "block");
  			$('#Block'+BlockNum+'_'+theRecId+'_notvis_btn').css("display", "none");
		}
	}
  });
}

function DeleteBlockRecord(BlockNum, theRecId, theExtraParams) {

  var PathToFile = ReturnBlockRelatedFile(BlockNum, 'DELETE');
  
  if (PathToFile != '') {
	var answer = confirm("Are you sure you want to delete this record?");
	
	if (answer) {
	  jQuery.ajax({ 
		type: "POST",
		url: PathToFile,
		data: "sid="+Math.random()+"&id="+theRecId,
		cache: false,
		success: function(){
			UpdateBlockBody(BlockNum, theExtraParams);		
		}
	  });
	}
  }
}

function ReOrderBlockRecord(BlockNum, theAction, theDispOrder, theExtraParams) {

  var PathToFile = ReturnBlockRelatedFile(BlockNum, 'ORDER');
  var thePrgType = $('#prg_type').val();
  if (theExtraParams != '') {
	theExtraParams = "&"+theExtraParams;  
  }
  jQuery.ajax({ 
	type: "GET",
	url: PathToFile,
	data: "sid="+Math.random()+"&prgtype="+thePrgType+"&recaction="+theAction+"&disporder="+theDispOrder+theExtraParams,
	cache: false,
	success: function(res){
		UpdateBlockBody(BlockNum, theExtraParams);		
	}
  });
}

function UpdateBlockBody_Month(theBlockNum) {
	var ExtraParams = "month="+$('#month_sel_'+theBlockNum).val();
	ExtraParams += "&year="+$('#year_sel_'+theBlockNum).val();
	UpdateBlockBody(theBlockNum, ExtraParams);		
}

function DeleteBlockFile() {
  $('img#thumb').attr('src', "layout/images/cp_noasset_167X80.gif");
  $('#filename').val(''); 
  $('#file_del_btn').html("");
  //empty rec_photo to delete it
  $('#rec_photo').val(''); 
}

/* CONTROL PANEL FUNCTIONS END */

/* PROMOTIONS BLOCK FUNCTIONS */
function PromotionsNextSlideNumDelay(thePrgType, theSlideNum) {
  var delay;
  
  jQuery.ajax({ 
	type: "GET",
	url: "modules/ws_mod_tvg_01/blocks/promotions/get_slide_delay.php",
	data: "sid="+Math.random()+"&prgtype="+thePrgType+"&slide="+theSlideNum,
	async:false, 
	success: function(res){
		delay = res;		
	}
  });
  
  return delay;
}

function PromotionsDefaultSlideDelay(thePrgType, theSlideDelay) {
	var DefSlideNumFindDelay = ShowSlideNum+1;
	var theDefNextSlideDelay = PromotionsNextSlideNumDelay(thePrgType, DefSlideNumFindDelay);
	setTimeout("PromotionsUpdateSlide('"+thePrgType+"', '', "+theDefNextSlideDelay+")", theSlideDelay);
}

function PromotionsUpdateSlide(thePrgType, theSlideNum, theSlideDelay) {
	
	/* setup loading block */
	var new_block_h = $('#PrbBlock').width();
	var new_block_w = $('#PrbBlock').height();
	
	$('#block_loading').css("width", new_block_w+"px");
	$('#block_loading').css("height", new_block_h+"px");
	$('#block_loading').css("display","block");
	$('#block_loading_img').css("marginTop", (new_block_h/2)-32);
	/* */
	/* Slide Conf */
	var TotalSlides = parseInt($('#total_slides').val(),10);	
	TotalSlides = TotalSlides-1; //because slides num starts from 0
	
	var SlideNumParam = parseInt(theSlideNum,10);
	if ((SlideNumParam >= 0)&&(SlideNumParam<=TotalSlides)) {
		ShowSlideNum = SlideNumParam;
	} else {
		if (ShowSlideNum < TotalSlides) {
			ShowSlideNum++;
		} else {
			ShowSlideNum = 0;
		}
	}
	if (TotalSlides > 0) {
	  for(var c=0;c<=TotalSlides;c++) {
		  if (c == ShowSlideNum) {
			  $('#nav_'+c).removeClass("nav").addClass("nav_sel");
			  /*
			  document.getElementById("nav_"+c).style.fontWeight = 'bold';
			  document.getElementById("nav_"+c).style.color = '#FF0000';
			  */
		  } else {
			  $('#nav_'+c).removeClass("nav_sel").addClass("nav");
			  /*
			  document.getElementById("nav_"+c).style.fontWeight = 'normal';
			  document.getElementById("nav_"+c).style.color = '#FFF';
			  */
		  }
	  }
	}
	/** NEXT SLIDE NUM TO FIND DELAY ***/
	var SlideNumFindDelay = ShowSlideNum+1;
	if (SlideNumFindDelay > TotalSlides) {
		SlideNumFindDelay = 0;
	}
	var theNextSlideDelay = PromotionsNextSlideNumDelay(thePrgType, SlideNumFindDelay);
	/****/
	clearTimeout(timeout);
	timeout = setTimeout("PromotionsUpdateSlide('"+thePrgType+"', '', "+theNextSlideDelay+")", theSlideDelay);	
	
	jQuery.ajax({ 
	  type: "GET",
	  url: "modules/ws_mod_tvg_01/blocks/promotions/update_slide.php",
	  data: "sid="+Math.random()+"&prgtype="+thePrgType+"&slide="+ShowSlideNum,
	  async:false, 
	  success: function(res){
		$("#PrbBlock").fadeOut(0, function() {
		  $("#PrbBlock").html(res);
		});
		$("#PrbBlock").fadeIn('slow');
		/*
		var ajaxDisplay = document.getElementById("PrbBlock");
		ajaxDisplay.innerHTML = ajaxRequest.responseText;
		*/
	  }
	});
}

function ChangePromotionsNav(SlideNum, Action) {
	if (SlideNum != ShowSlideNum) {
	  if (Action == 'O') {
		  $('#nav_'+SlideNum).removeClass("nav").addClass("nav_sel");
	  } else {
		  $('#nav_'+SlideNum).removeClass("nav_sel").addClass("nav");
	  }
	}
}
/* PORGRAMS FUNCTIONS */
function ProgramsNavButtons(thePrgType, BlockPageNum, MaxBlockRecs, QueryString){
	var ajaxRequest; 
	/* setup loading block */
	var new_block_h = parseInt(document.getElementById(thePrgType+"BlockContentArea").scrollHeight, 10);
	var new_block_w = parseInt(document.getElementById(thePrgType+"BlockContentArea").scrollWidth, 10);
	new_block_h = new_block_h; // paging row height
	document.getElementById("block_"+thePrgType+"_loading").style.width = new_block_w + "px";
	document.getElementById("block_"+thePrgType+"_loading").style.height = new_block_h + "px";
	
	document.getElementById("block_"+thePrgType+"_loading").style.display = "block";
	document.getElementById("block_"+thePrgType+"_loading_img").style.marginTop = ((new_block_h / 2) - 16);
	/* */
	
	try {
		// Opera 8.0+, Firefox, Safari
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		// Internet Explorer Browsers
		try {
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				// Something went wrong
				alert("Something is wrong with your browser!");
				return false;
			}
		}
	}
	
	var queryString = "?prgtype="+thePrgType+"&pagenum=" + BlockPageNum + "&maxrecs=" + MaxBlockRecs + QueryString;
	
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4) {
			var ajaxDisplay = document.getElementById(thePrgType+"BlockContentArea");
			ajaxDisplay.innerHTML = ajaxRequest.responseText;
		}
	}
	ajaxRequest.open("GET", "modules/ws_mod_tvg_01/programs/update_programs.php" + queryString, true);
	ajaxRequest.send(null);
	
}

function ProgramsDetailsDisplayInfo(thePrgId, theTabNum, theLang){
	var ajaxRequest; 
	/* setup loading block */
	var new_block_h = parseInt(document.getElementById("ProgramBodyBlock").scrollHeight, 10);
	var new_block_w = parseInt(document.getElementById("ProgramBodyBlock").scrollWidth, 10);
	new_block_h = new_block_h; // paging row height
	document.getElementById("block_loading").style.width = new_block_w + "px";
	document.getElementById("block_loading").style.height = new_block_h + "px";
	
	document.getElementById("block_loading").style.display = "block";
	document.getElementById("block_loading_img").style.marginTop = ((new_block_h / 2) - 16);
	/* */
	
	/**/
	//TABS BLOCK
	for(var k=1; k<=3; k++) {
		if (k == theTabNum) {
			if (document.getElementById("btn_"+k+"_on")) {
			  document.getElementById("btn_"+k+"_on").style.display = "none";
			  document.getElementById("btn_"+k+"_sel").style.display = "block";
			}
		} else {
			if (document.getElementById("btn_"+k+"_on")) {
			  document.getElementById("btn_"+k+"_on").style.display = "block";
			  document.getElementById("btn_"+k+"_sel").style.display = "none";
			}
		}
	}
	/**/
	try {
		// Opera 8.0+, Firefox, Safari
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		// Internet Explorer Browsers
		try {
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				// Something went wrong
				alert("Something is wrong with your browser!");
				return false;
			}
		}
	}
	
	var queryString = "?prgid="+thePrgId+"&tabnum=" + theTabNum + "&lang=" + theLang;
	
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4) {
			var ajaxDisplay = document.getElementById("ProgramBodyBlock");
			ajaxDisplay.innerHTML = ajaxRequest.responseText;
			$(document).ready(function(){
				$(".lightbox").lightbox();
			});
		}
	}
	ajaxRequest.open("GET", "modules/ws_mod_tvg_01/program_details/update_body.php" + queryString, true);
	ajaxRequest.send(null);
}

function UpdateProgramVideo(thePrgVidId){
	var ajaxRequest; 
	/* setup loading block */
	var new_block_h = parseInt(document.getElementById("ShowVideoBlock").scrollHeight, 10);
	var new_block_w = parseInt(document.getElementById("ShowVideoBlock").scrollWidth, 10);
	new_block_h = new_block_h; // paging row height
	document.getElementById("show_video_loading").style.width = new_block_w + "px";
	document.getElementById("show_video_loading").style.height = new_block_h + "px";
	
	document.getElementById("show_video_loading").style.display = "block";
	document.getElementById("show_video_loading_img").style.marginTop = ((new_block_h / 2) - 16);
	/* */
	
	try {
		// Opera 8.0+, Firefox, Safari
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		// Internet Explorer Browsers
		try {
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				// Something went wrong
				alert("Something is wrong with your browser!");
				return false;
			}
		}
	}
	
	var queryString = "?prgvidid="+thePrgVidId;
	
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4) {
			var ajaxDisplay = document.getElementById("ShowVideoBlock");
			ajaxDisplay.innerHTML = ajaxRequest.responseText;
		}
	}
	ajaxRequest.open("GET", "modules/ws_mod_tvg_01/program_details/update_video.php" + queryString, true);
	ajaxRequest.send(null);
}

