function ajaxRequest(url,para,divid)
{
	new ajax
	(url,
		{
		postBody:para,
		onComplete: function (){
			},
		update:divid
		}
	).request();
	return false;
}


function html_request(url,para,divid) {

	var req = new Request.HTML({url:url, 
		onSuccess: function(html) {
			$(divid).set('text', '');
			$(divid).adopt(html);
		},
		onFailure: function() {
			$(divid).set('text', 'The request failed.');
		}
	});
	req.send(para);
	
};





function chknickname(){
var url="nicknamechk.php";
var para="value=" + $("_nickname").value;
var divid="availability_result";

	var req = new Request.HTML({
		url:url, 
		onSuccess: function(html) {
			$(divid).set('text', '');
			$(divid).adopt(html);
		},
		onFailure: function() {
			$(divid).set('text', 'The request failed.');
		}
	}).post(para);
}
	
	
function _chknickname() {
var para="qry=" + $("_nickname").value;

	var req = new Request.HTML({url:'nicknamechk.php', 
		onSuccess: function(html) {
			$('availability_result').set('text', '');
			$('availability_result').adopt(html);
		},
		onFailure: function() {
			$('availability_result').set('text', 'The request failed.');
		}
	});
	req.send(para);
	
};



var timeout = 1000;var closetimer = 0;var menubox = 0;var menuoptions = {open: function(){ menuoptions.cancelclosetime;if(menubox) menubox.style.visibility = 'hidden';menubox=document.getElementById('menuoptions_box');	menubox.style.visibility = 'visible';},close: function(){if(menubox) menubox.style.visibility = 'hidden';},cancelclosetime: function(){if(closetimer){window.clearTimeout(closetimer);closetimer = null;}},closetime: function(){closetimer = window.setTimeout(menuoptions.close, timeout);}}
document.onclick = menuoptions.close;



function hasOptions(obj){if(obj!=null && obj.options!=null){return true;}return false;}
function selectUnselectMatchingOptions(obj,regex,which,only){if(window.RegExp){if(which == "select"){var selected1=true;var selected2=false;}else if(which == "unselect"){var selected1=false;var selected2=true;}else{return;}var re = new RegExp(regex);if(!hasOptions(obj)){return;}for(var i=0;i<obj.options.length;i++){if(re.test(obj.options[i].text)){obj.options[i].selected = selected1;}else{if(only == true){obj.options[i].selected = selected2;}}}}}
function selectMatchingOptions(obj,regex){selectUnselectMatchingOptions(obj,regex,"select",false);}
function selectOnlyMatchingOptions(obj,regex){selectUnselectMatchingOptions(obj,regex,"select",true);}
function unSelectMatchingOptions(obj,regex){selectUnselectMatchingOptions(obj,regex,"unselect",false);}
function sortSelect(obj){var o = new Array();if(!hasOptions(obj)){return;}for(var i=0;i<obj.options.length;i++){o[o.length] = new Option( obj.options[i].text, obj.options[i].value, obj.options[i].defaultSelected, obj.options[i].selected) ;}if(o.length==0){return;}o = o.sort(
function(a,b){if((a.text+"") <(b.text+"")){return -1;}if((a.text+"") >(b.text+"")){return 1;}return 0;});for(var i=0;i<o.length;i++){obj.options[i] = new Option(o[i].text, o[i].value, o[i].defaultSelected, o[i].selected);}}
function selectAllOptions(obj){if(!hasOptions(obj)){return;}for(var i=0;i<obj.options.length;i++){obj.options[i].selected = true;}}
function moveSelectedOptions(from,to){if(arguments.length>3){var regex = arguments[3];if(regex != ""){unSelectMatchingOptions(from,regex);}}if(!hasOptions(from)){return;}for(var i=0;i<from.options.length;i++){var o = from.options[i];if(o.selected){if(!hasOptions(to)){var index = 0;}else{var index=to.options.length;}to.options[index] = new Option( o.text, o.value, false, false);}}for(var i=(from.options.length-1);i>=0;i--){var o = from.options[i];if(o.selected){from.options[i] = null;}}if((arguments.length<3) ||(arguments[2]==true)){sortSelect(from);sortSelect(to);}from.selectedIndex = -1;to.selectedIndex = -1;}
function copySelectedOptions(from,to){var options = new Object();if(hasOptions(to)){for(var i=0;i<to.options.length;i++){options[to.options[i].value] = to.options[i].text;}}if(!hasOptions(from)){return;}for(var i=0;i<from.options.length;i++){var o = from.options[i];if(o.selected){if(options[o.value] == null || options[o.value] == "undefined" || options[o.value]!=o.text){if(!hasOptions(to)){var index = 0;}else{var index=to.options.length;}to.options[index] = new Option( o.text, o.value, false, false);}}}if((arguments.length<3) ||(arguments[2]==true)){sortSelect(to);}from.selectedIndex = -1;to.selectedIndex = -1;}
function moveAllOptions(from,to){selectAllOptions(from);if(arguments.length==2){moveSelectedOptions(from,to);}else if(arguments.length==3){moveSelectedOptions(from,to,arguments[2]);}else if(arguments.length==4){moveSelectedOptions(from,to,arguments[2],arguments[3]);}}
function copyAllOptions(from,to){selectAllOptions(from);if(arguments.length==2){copySelectedOptions(from,to);}else if(arguments.length==3){copySelectedOptions(from,to,arguments[2]);}}
function swapOptions(obj,i,j){var o = obj.options;var i_selected = o[i].selected;var j_selected = o[j].selected;var temp = new Option(o[i].text, o[i].value, o[i].defaultSelected, o[i].selected);var temp2= new Option(o[j].text, o[j].value, o[j].defaultSelected, o[j].selected);o[i] = temp2;o[j] = temp;o[i].selected = j_selected;o[j].selected = i_selected;}
function moveOptionUp(obj){if(!hasOptions(obj)){return;}for(i=0;i<obj.options.length;i++){if(obj.options[i].selected){if(i != 0 && !obj.options[i-1].selected){swapOptions(obj,i,i-1);obj.options[i-1].selected = true;}}}}
function moveOptionDown(obj){if(!hasOptions(obj)){return;}for(i=obj.options.length-1;i>=0;i--){if(obj.options[i].selected){if(i !=(obj.options.length-1) && ! obj.options[i+1].selected){swapOptions(obj,i,i+1);obj.options[i+1].selected = true;}}}}
function removeSelectedOptions(from){if(!hasOptions(from)){return;}if(from.type=="select-one"){from.options[from.selectedIndex] = null;}else{for(var i=(from.options.length-1);i>=0;i--){var o=from.options[i];if(o.selected){from.options[i] = null;}}}from.selectedIndex = -1;}
function removeAllOptions(from){if(!hasOptions(from)){return;}for(var i=(from.options.length-1);i>=0;i--){from.options[i] = null;}from.selectedIndex = -1;}
function addOption(obj,text,value,selected){if(obj!=null && obj.options!=null){obj.options[obj.options.length] = new Option(text, value, false, selected);}}






function getall()
{
var count ='0';
var boxLength = document.getElementById("options").length;
if (boxLength != 0) 
{
	for (i = 0; i < boxLength; i++) {
	document.getElementById("orderids").options[i].selected=true ;
	count++;
	}
}

}



function urlencode( str ) {
    var histogram = {}, histogram_r = {}, code = 0, tmp_arr = [];
    var ret = str.toString();
    
    var replacer = function(search, replace, str) {
        var tmp_arr = [];
        tmp_arr = str.split(search);
        return tmp_arr.join(replace);
    };
    
    histogram['!']   = '%21';
    histogram['%20'] = '+';
    
    ret = encodeURIComponent(ret);
    
    for (search in histogram) {
        replace = histogram[search];
        ret = replacer(search, replace, ret) // Custom replace. No regexing
    }
    
    return ret.replace(/(\%([a-z0-9]{2}))/g, function(full, m1, m2) {
        return "%"+m2.toUpperCase();
    });
    
    return ret;
}

function cart_remove(para)
{
var url="cart_remove.php";
var divid="basket_list";
var req = new Request.HTML({url:url, 
		onSuccess: function(html) {
			$(divid).set('text', '');
			$(divid).adopt(html);
			basket_items();
		},
		onFailure: function() {
			$(divid).set('text', 'The request failed. Please refresh your page and try again.');
		}
	});
	req.send(para);
}

function cart_update(cartid)
{
var url="cart_update.php";
var divid="basket_list";
var fieldid="cartid_"+cartid;
var qty=$(fieldid).value;
var para="cartid="+cartid+"&qty="+qty;


var req = new Request.HTML({url:url, 
		onSuccess: function(html) {
			$(divid).set('text', '');
			$(divid).adopt(html);
			basket_items();		
		},
		onFailure: function() {
			$(divid).set('text', 'The request failed. Please refresh your page and try again.');
		}
	});
	req.send(para);
}

function ship_mode()
{
var url="ship_mode.php";
var divid="basket_list";
var para="mode="+$('shipmode').value;
var req = new Request.HTML({url:url, 
		onSuccess: function(html) {
			$(divid).set('text', '');
			$(divid).adopt(html);
			basket_items();		
		},
		onFailure: function() {
			$(divid).set('text', 'The request failed. Please refresh your page and try again.');
		}
	});
	req.send(para);
}




function basket_items()
{
var url="top_ttl.php";
var divid="basket_items";

			var req = new Request({url:url,
			onSuccess: function(txt,xml) {
			$(divid).set('text', txt);
			if(txt == '0.00'){ window.location = 'basket.php'; }
		},
		onFailure: function() {
			$(divid).set('text', 'The request failed. Please refresh your page and try again.');
		}
	});
	req.send();
}


function _resetp(){
var url="re_pass.php";
var para="email="+$('regemail').value;
			var req = new Request({url:url,
			onSuccess: function(txt,xml) {
if(txt == 'error'){
$('fperror').setStyle('display','block');
}
else if(txt == 'emailed'){
$('fpdiv').setStyle('display','none');
$('fpreset').setStyle('display','block');
}
//alert(txt);
		},
		onFailure: function() {
//			$(divid).set('text', 'The request failed. Please refresh your page and try again.');
		}
	});
	req.send(para);
}


function nuchibox(f,w,h){
var size = $(document.body).getSize();
var xpos=  (size.x  - ( w )) / 2;
var ypos=  (size.y  - ( h / 2 )) / 3  + window.pageYOffset;
	var req = new Request.HTML({url:f, 
		onSuccess: function(html) {			
			var closethis = new Element('img',{ src: 'images/icons/cross.png', id: 'closethis', styles: { float:'right',cursor:'hand'}}); 			

closethis.addEvent('click', function(e){ e.stop(); $('resultbox').empty(); 
/* olay.close();  */
$('body').unmask();
$('resultbox').setStyles({  width: '0px',height: '0px',display:'none'});});

$('body').mask();

			$('resultbox').setStyles({ display:'block',width: w+'px',height: h+'px',position: 'absolute',top: ypos+'px',left: xpos+'px',padding:'10px',opacity: '1','z-index':5001});
			$('resultbox').set('text', '');

if(f!= 'askme.php'){ closethis.inject('resultbox'); }
			$('resultbox').adopt(html);

		},
		onFailure: function() {
			$('resultbox').set('text', 'The request failed.');
		}
	});
	req.send();
}


function insertAtCaret(areaId,text) {
	var txtarea = document.getElementById(areaId);
	var scrollPos = txtarea.scrollTop;
	var strPos = 0;
	var br = ((txtarea.selectionStart || txtarea.selectionStart == '0') ? 
		"ff" : (document.selection ? "ie" : false ) );
	if (br == "ie") { 
		txtarea.focus();
		var range = document.selection.createRange();
		range.moveStart ('character', -txtarea.value.length);
		strPos = range.text.length;
	}
	else if (br == "ff") strPos = txtarea.selectionStart;
	
	var front = (txtarea.value).substring(0,strPos);  
	var back = (txtarea.value).substring(strPos,txtarea.value.length); 
	txtarea.value=front+text+back;
	strPos = strPos + text.length;
	if (br == "ie") { 
		txtarea.focus();
		var range = document.selection.createRange();
		range.moveStart ('character', -txtarea.value.length);
		range.moveStart ('character', strPos);
		range.moveEnd ('character', 0);
		range.select();
	}
	else if (br == "ff") {
		txtarea.selectionStart = strPos;
		txtarea.selectionEnd = strPos;
		txtarea.focus();
	}
	txtarea.scrollTop = scrollPos;
}
