// Javascript 

function mustBeGreaterThan(userdate)
{ 
	var dt = new Date();
	var currentdt = dt.getMonth()+1 + '/' + dt.getDate() + '/' +  dt.getFullYear(); 
    var ch=Date.parse(userdate);
    
    if(ch>Date.parse(currentdt) || ch==Date.parse(currentdt)) {	
    	return true;
    } else {
        alert("\nDate is less than current date.");        	
    	return false;
    }         
}


function isPhone(phone)
{
	  if(phone!=''){
		  var regExp	=	/^[0-9\s+-]+$/;  
		  return regExp.test(phone);
	  }
}


// Trim all extra whitespaces within string.
// First, leading and trailing spaces are removed from the string in a couple of statements. Build a regular expression statement that will find one or// more starting white space characters (space, tab, form feed, or line feed), then any character (\W\w ends up being anything), then one or more
// ending white spaces after a word boundary. If that pattern is found in the input string, maintain only the middle characters (the \W\w part).
function trim(value) {
   var temp = value;
   var obj = /^(\s*)([\W\w]*)(\b\s*$)/;
   if (obj.test(temp)) { temp = temp.replace(obj, '$2'); }
   var obj = /  /g;
   while (temp.match(obj)) { temp = temp.replace(obj, " "); }
   return temp;
}


function oneTimeValidation(currentSelected) {
	if(currentSelected == 1) {
		var am = document.getElementsByName('am_time[]');
		for(var i=0; i < am.length; i++) {
			if(am[i].checked) { 
					am[i].checked = false;
			}
		}
		var pm = document.getElementsByName('pm_time[]');	
		for(var i=0; i < pm.length; i++) {
			if(pm[i].checked) { 
					pm[i].checked = false;
			}
		}		
	}
}


function selectOneTime(currentChecked){
	if(document.reminder_form.rm_frequency.selectedIndex == 1) {
		var am = document.getElementsByName('am_time[]');
		for(var i=0; i < am.length; i++) {
			if(am[i].checked) { 
				if(am[i].id != currentChecked) {
					am[i].checked = false;
				}
			}
		}
		var pm = document.getElementsByName('pm_time[]');	
		for(var i=0; i < pm.length; i++) {
			if(pm[i].checked) { 
				if(pm[i].id != currentChecked) {
					pm[i].checked = false;
				}
			}
		}
	} 
	return true;
}


function isBlank(testStr)
{  	
	if (testStr.length == 0) { // nothing entered?
		return 'y';
	}
	for (var i = 0; i <= testStr.length-1; i++) { // all spaces?
		if (testStr.charAt(i) != " ") {
			return 'n';
		}	
	}
	return 'y';
} 


function validate_form(frm) {
	var msg = "";
	var flag = true;
	var box = "";
	var focus = false;
	// Name is required

	var name = trim(frm.width.value);	
	if(isBlank(name) != 'y') {
		if(! isNumeric(name)) { 
			msg = "\n  - Width must be numeric";
			flag = false;			
		}		
	}
	
	var height = trim(frm.height.value);	
	if(isBlank(height) != 'y') {
		if(! isNumeric(height)) { 
			msg = msg + "\n  - Height must be numeric";
			flag = false;			
		}		
	}		

	if(flag) { 	
		return true;
	} else {
		alert(msg);
		return false;	
	} 			
}


function validate_product_form(frm) {
	var msg = "";
	var flag = true;
	var box = "";
	var focus = false;
	// Name is required

	if(document.getElementById('cats1').selectedIndex == 0) {
		if(document.getElementById('manu1').selectedIndex == 0 ) {
			msg = msg + "\n  -  supplier is required";
			flag = false;						
		}
	}

	if(document.getElementById('cats1').selectedIndex == 1) {
		if(document.getElementById('manu2').selectedIndex == 0 ) {
			msg = msg + "\n  - supplier is required.";
			flag = false;						
		}
	}
	
	var name = document.getElementById('data[0][products_name]').value;
	if(isBlank(name) == 'y') {
		msg = msg + "\n  - Product name is required.";
		flag = false;			
	}
	
	var name = document.getElementById('data[0][products_model]').value;
	if(isBlank(name) == 'y') {
		msg = msg + "\n  - Product model is required.";
		flag = false;			
	}	
	
	if(flag) { 	
		return true;
	} else {
		alert(msg);
		return false;	
	}
	
	return false;
}


function validate_Board_form(frm) {
	var msg = "";
	var flag = true;
	var box = "";
	var focus = false;
	// Name is required

	if(document.getElementById('result').selectedIndex == 0 ) {
		msg = msg + "\n  - Supplier is required";
		flag = false;						
	}

	var name = document.getElementById('data[0][supplier_ref]').value;
	if(isBlank(name) == 'y') {
		msg = msg + "\n  - Supplier Reference is required.";
		flag = false;			
	}
	
	var name = document.getElementById('data[0][board_name]').value;
	if(isBlank(name) == 'y') {
		msg = msg + "\n  - Board Name is required.";
		flag = false;			
	}

	var name = document.getElementById('data[0][colour]').value;
	if(isBlank(name) == 'y') {
		msg = msg + "\n  - Board Colour is required.";
		flag = false;			
	}
	
	if(flag) { 	
		return true;
	} else {
		alert(msg);
		return false;	
	}
	
	return false;
}


function validate_Edging_form(frm) {
	var msg = "";
	var flag = true;
	var box = "";
	var focus = false;
	// Name is required

	if(document.getElementById('result').selectedIndex == 0 ) {
		msg = msg + "\n  - Supplier is required";
		flag = false;						
	}

	var name = document.getElementById('data[0][supplier_ref]').value;
	if(isBlank(name) == 'y') {
		msg = msg + "\n  - Supplier Reference is required.";
		flag = false;			
	}
	/*
	var name = document.getElementById('data[0][cadre_code]').value;
	if(isBlank(name) == 'y') {
		msg = msg + "\n  - Cadre Code is required.";
		flag = false;			
	}
	
	var name = document.getElementById('data[0][product_name]').value;
	if(isBlank(name) == 'y') {
		msg = msg + "\n  - Product name is required.";
		flag = false;			
	}
	*/
	if(document.getElementById('textureId').selectedIndex == 0 ) {
		msg = msg + "\n  - Texture is required";
		flag = false;						
	}
	
	var name = document.getElementById('data[0][psize]').value;
	if(isBlank(name) == 'y') {
		msg = msg + "\n  - Size is required.";
		flag = false;			
	}

	var name = document.getElementById('data[0][colour]').value;
	if(isBlank(name) == 'y') {
		msg = msg + "\n  - Colour is required.";
		flag = false;			
	}
	
	/*
	var name = document.getElementById('data[0][material]').value;
	if(isBlank(name) == 'y') {
		msg = msg + "\n  - Material is required.";
		flag = false;			
	}
	*/
	
	if(flag) { 	
		return true;
	} else {
		alert(msg);
		return false;	
	}
	
	return false;
}


function validate_category_form(frm) {
	var msg = "";
	var flag = true;
	var box = "";
	var focus = false;
	// Name is required

	var name = document.getElementById('data[0][categories_name]').value;
	if(isBlank(name) == 'y') {
		msg = msg + "\n  - Category name is required.";
		flag = false;			
	}
	

	if(flag) { 	
		return true;
	} else {
		alert(msg);
		return false;	
	}
	
	return false;
}


function validate_supplier_form(frm) {
	var msg = "";
	var flag = true;
	var box = "";
	var focus = false;
	// Name is required

	var name = document.getElementById('data[0][supplier_name]').value;
	if(isBlank(name) == 'y') {
		msg = msg + "\n  - supplier name is required.";
		flag = false;			
	}

	if(flag) { 	
		return true;
	} else {
		alert(msg);
		return false;	
	}
	
	return false;
}


function hidesupplier(rootUrl) {
	//alert("navi");
	var ob = document.getElementById('load_callback');
	var catid = ob.selectedIndex;
	var inc = false;
	for (var i = 0; i < ob.options.length; i++) {
	   var vl= ob.options[i].innerHTML;
	   if(vl == 'ALL') {
		 inc = true;
	   }
	}
	
	if(inc) { var ct = catid; } else { var ct = catid+1; }
	//alert(ct);
	var myUrl = rootUrl + "supplier.php?action=load_supplier&id="+ct;
	//alert(myUrl); return false;
	jQuery.ajax({
	  url: myUrl,
	  beforeSend: function() {
		jQuery('#result').css({"width":"180px"});
	  },
	  success: function(data) {
		//alert(data);
		jQuery('#result').html(data);
	  }
	});
	if(catid == 0) {
		//document.getElementById('manu').style.display = 'none';		
		//document.getElementById('wh').style.display = '';
	} else {
		//document.getElementById('manu').style.display = '';			
		//document.getElementById('wh').style.display = 'none';
	}

	showHideElementsByCategoryId(ob.value);
	
}


function showHideElementsByCategoryId(catId) {
	catId = parseInt(catId);
	// Please don't move up/down any item below
	// Now search display is proper adjusted
	switch(catId) {
		case 1: // Edgings
		case 10: // Acrylic 3D Edgings
			jQuery("#admin_tr_cadre").fadeIn("slow");
			jQuery("#admin_tr_colour").fadeIn("slow");
			jQuery("#admin_coil_radio_div").fadeIn("slow");
			jQuery("#find_blank_div").fadeIn("slow");
			var showElem = Array("product_input_div", "cadre_input_div", "sage_input_div", "parent_select_div", "colour_input_div", "size_input_div");
			var hideElem = Array("board_input_div");
			showHideElements(hideElem, "hide");
			showHideElements(showElem);

			break;
		
		// Boards
		case 2:
			jQuery("#admin_tr_colour").fadeIn("fast");
			jQuery("#admin_tr_cadre").fadeOut("fast");
			jQuery("#find_blank_div").fadeOut("slow");
			var showElem = Array("board_input_div", "colour_input_div");
			var hideElem = Array("product_input_div", "cadre_input_div", "sage_input_div", "parent_select_div", "size_input_div");
			showHideElements(hideElem, "hide");
			showHideElements(showElem);

			break;
			
		default:
			jQuery("#admin_tr_cadre").fadeIn("slow");
			jQuery("#find_blank_div").fadeIn("slow");
			jQuery("#admin_tr_colour").fadeOut("slow");
			jQuery("#admin_coil_radio_div").fadeOut("slow");
			var showElem = Array("product_input_div", "cadre_input_div", "sage_input_div");
			var hideElem = Array("board_input_div", "parent_select_div", "colour_input_div", "size_input_div");
			showHideElements(hideElem, "hide");
			showHideElements(showElem);
	}
	
	/*
	if (catId == 1) {
		jQuery('#edging_input_div').css({"display":""});
		jQuery('#board_input_div').css({"display":"none"});

		jQuery("#admin_tr_colour").fadeIn("slow").css({"display":""});
		
		//jQuery('#find_blank_div').css({"display":""});
		jQuery('#find_blank_div').fadeIn('slow');
		
	} else if(catId == 2) {
		jQuery('#board_input_div').css({"display":""});
		jQuery('#edging_input_div').css({"display":"none"});

		jQuery("#admin_tr_colour").fadeOut("slow").css({"display":"none"});
		
		//jQuery('#find_blank_div').css({"display":"none"});
		jQuery('#find_blank_div').fadeOut('slow');
	
	}
	*/
	
}


function userhidesupplier(rootUrl) {
	var catId = document.getElementById('user_select_category').value;

	var myUrl = rootUrl + "supplier.php?action=load_supplier&id="+catId;

	jQuery.ajax({
	  url: myUrl,
	  beforeSend: function() {
		jQuery('#user_select_supplier').css({"width":"180px"});
		userShowHideElementsByCategoryId(catId);
	  },
	  success: function(data) {
		//alert(data);
		jQuery('#user_select_supplier').html(data);
	  }
	});

}


// function to call from user side
function userShowHideElementsByCategoryId(catId) {

	catId = parseInt(catId);

	// Please don't move up/down any item below
	// Now search display is proper adjusted
	switch(catId) {
		case 1: // Edgings
		case 10: // Acrylic 3D Edgings
			jQuery("#user_tr_cadre").fadeIn("slow");
			jQuery("#user_tr_colour").fadeIn("slow");
			var showElem = Array("product_name_label_div", "product_name_input_div", "cadre_label_div", "cadre_input_div", "sage_label_div", "sage_input_div", "colour_label_div", "colour_input_div", "size_label_div", "size_input_div");
			var hideElem = Array("supplier_label_div", "supplier_select_div", "board_label_div", "board_input_div", "supplier_ref_label_div", "supplier_ref_input_div");
			showHideElements(hideElem, "hide");
			showHideElements(showElem);

			break;
		
		// Boards
		case 2:
			jQuery("#user_tr_colour").fadeIn("fast");
			jQuery("#user_tr_cadre").fadeOut("fast");
			var showElem = Array("supplier_label_div", "supplier_select_div", "board_label_div", "board_input_div", "supplier_ref_label_div", "supplier_ref_input_div", "colour_label_div", "colour_input_div");
			var hideElem = Array("product_name_label_div", "product_name_input_div", "cadre_label_div", "cadre_input_div", "sage_label_div", "sage_input_div", "size_label_div", "size_input_div");
			showHideElements(hideElem, "hide");
			showHideElements(showElem);

			break;
			
		default:
			jQuery("#user_tr_cadre").fadeIn("slow");
			jQuery("#user_tr_colour").fadeOut("slow");
			var showElem = Array("product_name_label_div", "product_name_input_div", "cadre_label_div", "cadre_input_div", "sage_label_div", "sage_input_div");
			var hideElem = Array("supplier_label_div", "supplier_select_div", "board_label_div", "board_input_div", "supplier_ref_label_div", "supplier_ref_input_div", "colour_label_div", "colour_input_div", "size_label_div", "size_input_div");
			showHideElements(hideElem, "hide");
			showHideElements(showElem);
	}
	
	/*
	if (catId == 1) {
		// for user side
		jQuery('#user_label_supplier_ref').css({"display":""});
		jQuery('#user_input_supplier_ref').css({"display":""});
		
		jQuery('#user_label_board_name').css({"display":"none"});
		jQuery('#user_input_board_name').css({"display":"none"});
		
		jQuery('#user_label_supplier_name').fadeOut('fast');
		jQuery('#user_select_supplier').fadeOut('slow');
		jQuery('#user_select_supplier').css({"display":"none"});
		
		jQuery("#user_tr_colour").css({"display":""});
		//jQuery("#user_tr_colour").fadeIn("slow");
		
	} else if(catId == 2) {
	
		// for user side
		jQuery('#user_label_supplier_ref').css({"display":"none"});
		jQuery('#user_input_supplier_ref').css({"display":"none"});
		
		jQuery('#user_label_board_name').css({"display":""});
		jQuery('#user_input_board_name').css({"display":""});
		
		jQuery('#user_label_supplier_name').fadeIn('fast');
		jQuery('#user_select_supplier').fadeIn('slow');
		jQuery('#user_select_supplier').css({"display":""});
		
		jQuery("#user_tr_colour").css({"display":"none"});
		//jQuery("#user_tr_colour").fadeOut("slow");
		
	}
	*/
	
}


function hidesupplier_old() {
	//alert(document.myForm.categories_id.selectedIndex);
	
	if(document.myForm.categories.selectedIndex == 0) {
		document.getElementById("manu1").style.display = "";		
		document.getElementById("manu2").style.display = "none";
		document.getElementById("wh").style.display = "";
	} else {
		document.getElementById("manu2").style.display = "";		
		document.getElementById("manu1").style.display = "none";		
		document.getElementById("wh").style.display = "none";		
	}
	
	document.getElementById("results").style.display = "none";	
}


function copy_message() {
	var yy = document.getElementById("same_msg"); 
	var mobile_message = trim(document.reminder_form.rm_mobile_message.value);
	if(yy.checked) {
		document.reminder_form.rm_email_message.value = mobile_message;	
		document.reminder_form.rm_email_message.disabled = true;
		document.reminder_form.rm_email_message.checked = false;			
	} else {
		document.reminder_form.rm_email_message.value = "";
		document.reminder_form.rm_email_message.disabled = false;
		document.reminder_form.rm_email_message.checked = true;					
	}
}


function isEmailAddr(email) {
	if(email!=""){
		var regExp	=	/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;  
		return regExp.test(email);
	}
}


/*	This function is used on the user selecting a location
	from the drop-down menu named "LOCATION_ID".  It disables
	or enables and checks or unchecks the DST checkbox */
	function activateDSTBox(location_id)
	{ //alert(location_id);
		switch (location_id)
		{
			case '0':
			case '1':
			case '2':
			case '3':
			case '6':
			case '9':
			case '12':
			case '13':
			case '15':
			case '17':
			case '21':
			case '25':
			case '26':
			case '32':
			case '36':
			case '38':
			case '40':
			case '42':
			case '44':
			case '46':
			case '48':
			case '49':
			case '50':
			case '52':
			case '53':
			case '54':
			case '55':
			case '57':
			case '59':
			case '60':
			case '61':
			case '62':
			case '63':
			case '66':
			case '67':
			case '69':
			case '72':
			case '74':
			case '75':
				document.reminder_form.DST.disabled = true;
			//	if(ckd==0) {
				//	document.reminder_form.DST.checked = false;
			//	}	
				document.getElementById('dst').style.display = 'none';				
				break;
			default:
				document.reminder_form.DST.disabled = true;
			//	if(ckd==0) {				
				document.reminder_form.DST.checked = true;
			//	}	
				document.getElementById('dst').style.display = '';								
				break;
		}
		return true
	}
	
	
function toggleCheckBoxes() {
	if(document.myform.toggle.checked == true) {
		for (i=0; i<document.myform.length; i++)
			if(document.myform.elements[i].type=="checkbox") document.myform.elements[i].checked = true
	}
	
	if(document.myform.toggle.checked == false) {
		for (i=0; i<document.myform.length; i++)
			if(document.myform.elements[i].type=="checkbox") document.myform.elements[i].checked = false
	}
}


function getMemberName() {
	var tabl = document.getElementById('membersTable');
	var l = tabl.rows.length; //alert(l); return false;
	var i = 0;
	var s = "";
	for (i = 1; i<l-1; i++ )
	{
		var tr = tabl.rows[i];
		var cll = tr.cells[6]; 
		cll_type = cll.getElementsByTagName('input')[0].checked; //alert(cll_type); 
		//inner_html = cll.innerHTML; 
		if(cll_type == true) {
			x = tr.cells[2];
			memberName = (x.innerText)?x.innerText:x.textContent; //alert(memberName);			
			return memberName; 
		}
	}
}


function confirm_member_delete() { 
  var count_checked = 0;	
  for (i=0; i<document.myform.length; i++) { 
     if(document.myform.elements[i].type=="checkbox" && document.myform.elements[i].checked == true) { 
     	count_checked++;
     } 
  }
  if(document.myform.toggle.checked == true) {
  	count_checked = count_checked - 1;
  }
  if(count_checked == 0) {
  	alert('No member is selected');
  	return false;
  } 
  if(count_checked == 1) {
  	member_name = getMemberName();
  	if(confirm('Are you sure you want to delete ' + member_name+'?')){
  		return true;
  	} else return false;
  }
  if(count_checked > 1) {
  	if(confirm('Are you sure you want to delete selected members?')){
  		return true;
  	} else return false;  	
  }
  return true;
}


function confirmDelete() {
  	if(confirm('Are you sure you want to delete this Question?')){
  		return true;
  	} else return false;  	
}


function checkAll(){ 
  for (i=0; i<document.forms[1].length; i++)
     if(document.forms[1].elements[i].name=="group") document.forms[1].elements[i].checked = true
  //alert('all checked')
}


function clearAll(){
  for (i=0; i<document.forms[1].length; i++)
     document.forms[1].elements[i].checked = false
  //alert('all cleared')
}


function allow_add_member(url, rm_type) { //alert(rm_type);
	if(rm_type == 'I') {
		alert("You can\'t add member for Text Message");
		return false;
	} else {
		document.location.href=url;
//		window.location.href = url; 
		return true;		
	}
}


function count_checkbox() { 
  var count_checked = 0;	
  for (i=0; i<document.myform.length; i++) { 
     if(document.myform.elements[i].type=="checkbox" && document.myform.elements[i].checked == true) { 
     	count_checked++;
     } 
  }
  if(document.myform.toggle.checked == true) {
  	count_checked = count_checked - 1;
  }
  if(count_checked == 0) {
  	alert('No member is selected');
  	return false;
  }
 // document.myform.action='reminder/reminder_controller.php?action=add_member'; document.myform.method='post'; document.myform.submit(); 
  return true;
}



function toggle_visibility(id, imageBasePath) {
var e = document.getElementById('Div'+id);
	if(e.style.display == 'none') {
		e.style.display = 'inline';
		//alert(imageBasePath);
		document.getElementById('Img'+id).src = imageBasePath+"icon_min.gif";
	}
	else {
		e.style.display = 'none';
		document.getElementById('Img'+id).src = imageBasePath+'icon_plus.gif';		
	}
}



function addRow(t){
	var alphabets = Array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');	
	theRow = document.getElementById(t).rows[document.getElementById(t).rows.length-1];
	var indexV = theRow.cells[0].firstChild.value;
	for(i=0; i<alphabets.length; i++) {
		if(alphabets[i] == indexV) {
			newIndex = alphabets[i+1];
		}
	}
	theBod=theRow.parentNode;
	theTable=theRow.parentNode;
	newIndex = 'P';
	newRow = theRow.cloneNode(true);
	theBod.appendChild(newRow);
	newRow.cells[0].firstChild.name="optionIndex[]";
	newRow.cells[1].firstChild.name="option[]";
	newRow.cells[0].firstChild.value=''; //newIndex	
	newRow.cells[1].firstChild.value="";
	//newRow.cells[0].firstChild.style.backgroundColor = "white";		
	var txtBoxes = newRow.cells[0].getElementsByTagName("input");
	if(txtBoxes){
	 for( var i=0, limit=txtBoxes.length; i < limit; ++i)
	  {
	    if( String(txtBoxes[i].type).toLowerCase()=="text")
		 txtBoxes[i].value="";
	  }
	}
/*	newRow.cells[0].firstChild.value="";
	tObj=theRow.cells[0].firstChild;
	newRow.cells[0].firstChild.id="Text"+parseInt(tObj.id.split('Text')[1])+1;
	newRow.cells[0].firstChild.name="optionIndex[]";
	//newRow.cells[0].firstChild.value=newIndex;
	newRow.cells[1].firstChild.name="option[]";
	newRow.cells[0].firstChild.value="";	
	newRow.cells[1].firstChild.value="";
	//newRow.cells[2].innerHTML="<img src='images/del-but.gif' width='37'  onclick='var rowNo = whichRow(this); deleteRow(rowNo);' style='cursor:pointer;' height='28'>";
*/
	return false;
}


function deleteRow(rowNumber, optionName) {
	var tableID = 'optionTbl';
	var t = tableID;
	theRow = document.getElementById(t).rows[rowNumber];
	var txtBoxes = theRow.cells[0].getElementsByTagName("input");
	if(txtBoxes){
	 for( var i=0, limit=txtBoxes.length; i < limit; ++i)
	  {
		indexV = txtBoxes[i].value;
	  }
	}	
  	if(confirm('Are you sure you want to delete Option ' + indexV + '?')) {
		try {  
			var table = document.getElementById(tableID);
			table.deleteRow(rowNumber);
			var rowCount = table.rows.length;  
		}catch(e) {  
			alert(e);  
		}
  	} else return false;	
}


function whichRow(obj){
	var par=obj.parentNode;
	while(par.nodeName.toLowerCase()!='tr'){
		par=par.parentNode;
	}
	return par.rowIndex;
}





