


function showDropDown(idname) {
	var childobj = document.getElementById(idname);
	if (childobj.style.display == "none") {
		childobj.style.display = "block";
	} else {
		childobj.style.display = "none";
	}
}

function validateArea(form) {
	if (form.region.selectedIndex == 0) {
		alert("Please select a delivery area!");
		return false;
	} else {
		return true;
    }
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0
	eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
	if (restore) selObj.selectedIndex=0;
}

function openWindow(url) { 
	window.open(url,"EmailPriceList","width=500,height=200");
}

function preview(url) {
	helpWindow=window.open(url,"Preview","toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=yes,width=400,height=400");
}

function gift_wrapped() {
	g_object = document.getElementById("gift_wrapping_options");
	str = "<input type=\"hidden\" name=\"gift_wrapped\" value = \"1\">";
	if (typeof(document.getElementById("gift_wrap_on")) == "object") {
		checkbox = document.getElementById("gift_wrap_on");
		if (checkbox.checked){
			g_object.innerHTML = str;
		}
	}
}

function IsNumeric(strString) {
	//  check for valid numeric strings 
	var strValidChars = "0123456789.-";
	var strChar;
	var blnResult = true;
	if (strString.length == 0) {
		return false;
	}
	//  test strString consists of valid characters listed above
	for (j = 0; j < strString.length && blnResult == true; j++) {
		strChar = strString.charAt(j);
		if (strValidChars.indexOf(strChar) == -1) {
			blnResult = false;
		}
	}
	return blnResult;
}

function formatdollar(num) {
    var p = num.toFixed(2).split(".");
    return "" + p[0].split("").reverse().reduce(function(acc, num, i, orig) {
        return  num + (i && !(i % 3) ? "," : "") + acc;
    }, "") + "." + p[1];
}

function newprice(ori_price,obj_id) {
	var price_field = document.getElementById(obj_id);
	var addbasket_form = document.getElementById(obj_id+"_form");

	valid_config_array = new Array();
	var counter = 0;
	var price_change = 0.00;
	var config_value;

	var num_of_obj = addbasket_form.elements.length;

	for (i=0;i<num_of_obj;i++) {
		if (addbasket_form.elements[i].type == "select-one") {
			valid_config_array[counter] = i;
			counter++;  
		}
	}
	if (valid_config_array.length > 0) {
		forloop = valid_config_array.length;
		for(i=0;i<forloop;i++) {
			option_array = addbasket_form.elements[valid_config_array[i]].options;
			selected_opt_index = addbasket_form.elements[valid_config_array[i]].selectedIndex;
			config_value = option_array[selected_opt_index].value;
			price_change = price_change + Number(config_value_filter(config_value));
		}
	}
	HTML_str = Number(ori_price) + Number(price_change);
	price_field.innerHTML = formatdollar(HTML_str);
}

function config_value_filter(value_string) {
	var return_value;

	if (value_string.length > 0) {
		start_cut = value_string.indexOf("[");
		end_cut = value_string.indexOf("]");

		if ((start_cut==-1) || (end_cut==-1)) {
			return_value = 0;			
		} else {
			if (start_cut<end_cut) {
				substr_value = value_string.substr(start_cut,end_cut+1);
				if (substr_value.length > 3) {
					remove_square_string = substr_value.substr(1,substr_value.length-2)
					if (remove_square_string.substr(0,1) == "-") {
						operator = "-";
					} else {
						operator = "+";	
					}
					if (remove_square_string.substr(0,1) == "-") {
						number_value = remove_square_string.substr(1)
					} else if (remove_square_string.substr(0,1) == "+") {
						number_value = remove_square_string.substr(1)
					} else {
						number_value = remove_square_string
					}
					if (IsNumeric(number_value)) {
						return_value = operator + number_value;
					} else {
						return_value = 0;
					}
				} else {
				return_value = 0;
			}
		} else {
			return_value = 0;;
		}
	}
	} else {
		return_value = 0;
	}
	return return_value;
}

function tellFriend(product, baseURL) {
	var url = baseURL + '/send-to-friend.mibiznez?itemid=' + product;
	tellWindow = window.open(url, 'tell', ['width=450', 'height=380', 'left=50', 'top=50', 'scrollbars=auto', 'menubar=no', 'resizable=no']);
	tellWindow.top.focus();
}

//---DB-2012-10-18
function review_form_star(){
	jQuery('.hover-star').rating({
		cancel: 'Cancel', 
		cancelValue: '0',
		focus: function(value,link) {
			// console.log(jQuery(this).val());
			jQuery('#hover-test').text(jQuery(this).attr('title'));
		},
		blur: function(value, link){   
			//console.log(jQuery(this).attr('title'));
		},
		callback: function(value, link){
			// alert(value);
			myvalue = value; 
			// console.log("The rating is:"+$(this).attr('checked'));
			// get the value
		}
	});
}

function submit_review_form(id,item_name) {
	var rating;
	jQuery('#star-rating input').each(function() {
		// console.log('get val')
		if (jQuery(this).attr('checked')) {
			// console.log("The rating is:"+jQuery(this).val());
			rating = jQuery(this).val();
		}
	});
	var error = 0;
	error = validate_review_form(rating,"rate_error");
	
	var title = jQuery('#reviewtitle').val();
	error += validate_review_form(title,"title_error");
	//console.log(error);
 	var comment = jQuery('#reviewcomment').val();
	error += validate_review_form(comment,"comment_error");
	var pros = jQuery('#reviewpros').val();
	var cons = jQuery('#reviewcons').val();
	var bestuse = jQuery('#reviewbestuse').val();
	var recommend = jQuery('input[name=recomgroup]:checked').val();
	error += validate_review_form(recommend,"recommend_error");		 
	
 	var username = jQuery('#reviewusername').val();
	error += validate_review_form(username,"name_error");		 
	var location = jQuery('#reviewuserlocation').val();
	error += validate_review_form(location,"location_error");

	if(error == 0){
		var request_str = "insert-reviews.mibiznez?id=" + id + "&title=" + title+"&comment="+comment+"&rating="+rating+"&pros="+pros+"&cons="+cons;
		request_str += "&bestuse="+bestuse+"&recommend="+recommend+"&username="+username+"&location="+location;
		//console.log(request_str);
		jQuery.ajax({
		type: 'POST',
			url: request_str,
			dataType: "text",
			success: function(resp) {
				jQuery("div#review_details").hide('fast');
				jQuery("a#review_showhide_link").text("Click here to add new review...");
				// document.location.href = "";
				// window.location.reload(true);
			}
		});	
	} else {
		// console.log("Cannot add review");
	}
}

function validate_review_form(value,error_div){
	var error = 0;
	if (value) {
		jQuery("#"+error_div).hide('fast');
		error = 0;
	} else {
		jQuery("#"+error_div).show('fast');
		error = 1;
	}
	return error;
}

function showhide_review_form() {
	// alert("Hello");
	var review_div = jQuery("div#review_details");
	var isIE = /*@cc_on!@*/false || document.documentMode;   // At least IE6
	/*if (review_div.hasClass("review_form_show")) {
		review_div.removeClass("review_form_show");
		review_div.addClass("review_form_hide");
		jQuery("a#review_showhide_link").text("Click here to add new review ...");		
	} else {*/
		jQuery.ajax({
			type: 'GET',
			url: 'review-check-login.mibiznez?test=1',
			dataType: 'text',
			success: function(resp) {
				//console.log(resp);
				/*if(isIE){ // since session("user_id") is not working on IE
					review_div.removeClass("review_form_hide");
						review_div.addClass("review_form_show");
						jQuery("a#review_showhide_link").text("Hide review form");

				}else{*/
					if (resp == "not logged in") {
						alert("Please log in first.");
					}else {
						review_div.removeClass("review_form_hide");
						review_div.addClass("review_form_show");
						jQuery("a#review_showhide_link").text("Hide review form");
					}
				//}
			}
		});
	//}
}

function countdown_time(end_date) {
	// console.log(end_date);
	var current_day = new Date();
	var month, day, year;

	var current_hours = current_day.getHours();
	var current_mins = current_day.getMinutes();
	var current_sec = current_day.getSeconds();
	var d1 = 23 - current_hours, d2 = 59-current_mins, d3 = 59-current_sec;
	var dist = d1;
	var currentDate = new Date(new Date().getTime() + d1 * 60 * 60 * 1000+ d2 * 60 * 1000 + d3 * 1000);
	var day = currentDate.getDate()
	var month = currentDate.getMonth() + 1
	var year = currentDate.getFullYear()
	// console.log("Current hours:"+current_hours+","+d1+" Current mins:"+current_mins)
	var currentDate = new Date(end_date); //new Date(new Date(end_date).getTime() + d1 * 60 * 60 * 1000+ d2 * 60 * 1000 + d3 * 1000);
	// console.log(currentDate);
	var newdate_now = currentDate.getDate()+"/"+(currentDate.getMonth()+1)+"/"+currentDate.getFullYear();
	var newdate_from_db = current_day.getDate() +"/"+ (current_day.getMonth()+1) +"/"+ current_day.getFullYear();
	// console.log(newdate_now);
	// console.log(newdate_from_db);
	if (newdate_now == newdate_from_db) {
		//console.log("Today is the end of sale");
		currentDate = new Date(new Date().getTime() + d1 * 60 * 60 * 1000+ d2 * 60 * 1000 + d3 * 1000);
	}
	$('.daily_special_time').countdown({until: currentDate, format:'DHMS', compact:true, description:''});
	// $('#year').text(austDay.getFullYear());
}

function apply_voucher_price(id) {
	var code = jQuery("#voucher_code_"+id).val();
	//console.log(id);
	var request_str = "store-voucher-state.mibiznez?product_id="+id+"&voucher_code="+code;
	//console.log(request_str);
	jQuery.ajax({
		type: 'POST',
		url: request_str,
		dataType: "text",
		success: function(resp) {
			//console.log("Result from script: "+resp);
			if (resp == "active"){
				document.location.href = '';
				//console.log("hlp")
			}
			else{
				//console.log(resp);
				alert("Sorry, this voucher code is not valid.");
			}
		}
	});
}

/*
doug crockford's public domain JSON-js (minified with jsmin)
*/
var JSON;if(!JSON){JSON={};}
(function(){"use strict";function f(n){return n<10?'0'+n:n;}
if(typeof Date.prototype.toJSON!=='function'){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+'-'+
f(this.getUTCMonth()+1)+'-'+
f(this.getUTCDate())+'T'+
f(this.getUTCHours())+':'+
f(this.getUTCMinutes())+':'+
f(this.getUTCSeconds())+'Z':null;};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};}
var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==='string'?c:'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);})+'"':'"'+string+'"';}
function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(key);}
if(typeof rep==='function'){value=rep.call(holder,key,value);}
switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';}
gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==='[object Array]'){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||'null';}
v=partial.length===0?'[]':gap?'[\n'+gap+partial.join(',\n'+gap)+'\n'+mind+']':'['+partial.join(',')+']';gap=mind;return v;}
if(rep&&typeof rep==='object'){length=rep.length;for(i=0;i<length;i+=1){if(typeof rep[i]==='string'){k=rep[i];v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}else{for(k in value){if(Object.prototype.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}
v=partial.length===0?'{}':gap?'{\n'+gap+partial.join(',\n'+gap)+'\n'+mind+'}':'{'+partial.join(',')+'}';gap=mind;return v;}}
if(typeof JSON.stringify!=='function'){JSON.stringify=function(value,replacer,space){var i;gap='';indent='';if(typeof space==='number'){for(i=0;i<space;i+=1){indent+=' ';}}else if(typeof space==='string'){indent=space;}
rep=replacer;if(replacer&&typeof replacer!=='function'&&(typeof replacer!=='object'||typeof replacer.length!=='number')){throw new Error('JSON.stringify');}
return str('',{'':value});};}
if(typeof JSON.parse!=='function'){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==='object'){for(k in value){if(Object.prototype.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v;}else{delete value[k];}}}}
return reviver.call(holder,key,value);}
text=String(text);cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return'\\u'+
('0000'+a.charCodeAt(0).toString(16)).slice(-4);});}
if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,'@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']').replace(/(?:^|:|,)(?:\s*\[)+/g,''))){j=eval('('+text+')');return typeof reviver==='function'?walk({'':j},''):j;}
throw new SyntaxError('JSON.parse');};}}());
/*
end of minified JSON-js
*/


