/**
* settings
*/
var nonoilcatids = [11,12];
var nonoil_togllers = ['bulktype1k',
	'tr16','tr4','tr1','tr1g',
	'icas','ilatin_id','icountry','ipartofplant','iclass','imethod',
	'eoudb_control'];
/**
* general funcitons
*/
var myGlobalHandlers = {
	onCreate: function(){
		Element.addClassName('body','loading');
	},

	onComplete: function() {
		if(Ajax.activeRequestCount == 0){
			Element.removeClassName('body','loading');
		}
	}
};
Ajax.Responders.register(myGlobalHandlers);
/**
* editor funcitons
*/
function dbtoggle(obj,xid,model,fieldname) {
	try {
		// should be the <a> in the following:
		// <unknown><a><img/></a></unknown>
		var make = null;
		if (typeof(obj)=='string') {
			obj = $(obj);
		}
		if(typeof(obj)=='object' && xid > 0) {
			// -- parent --
			var parent = obj.parentNode;
			// get non <a> parent
			while (parent.tagName == 'a') {
				 parent = parent.parentNode;
			}
			// make sure we know the ID
			if (!parent.id || parent.id==undefined || parent.id=='' || parent.id==null) {
				var now = new Date();
				parent.id = 'dbtoggle_'+now.getTime();
			}
			// -- child / img --
			var imgs = obj.getElementsByTagName('img');
			for (var i=0; i<imgs.length; i++) {
				if (imgs[i].src) {
					if (imgs[i].src.indexOf('ok')>-1) {
						// is currently true
						make = false;
					} else if (imgs[i].src.indexOf('cancel')>-1) {
						// is currently false
						make = true;
					}
				}
			}
			// do something
			if (make===true || make===false) {
				if (make===true) {
					make = 1;
				} else {
					make = 0;
				}
				
				var url = '/'+model.toLowerCase()+'s/change/'+xid+'/'+fieldname+'/'+make+'/'+parent.id;
				var pars = '';
				var myAjax = new Ajax.Request(
					url, 
					{
						method: 'get', 
						parameters: pars,
						onComplete: dbtoggle_re
					});
			}
		}
	} catch(e) {
		alert(e);
	}
}
function dbtoggle_re(originalRequest,aobj) {
	try {
		var src_true = '/img/ok.12px.png';
		var src_false = '/img/cancel.12px.png';
		
		var parts = originalRequest.responseText.split('|');
		if (parts.length>3) {
			id = 		parseInt(parts[0]);
			xfield = 	parts[1];
			xvalue = 	parts[2];
			div_id = 	parts[3];
			
			if ($(div_id)) {
				if (xvalue == 'error') {
					$(div_id).innerHTML = '<small>'+xvalue+'</small>';
				} else {
					var imgs = $(div_id).getElementsByTagName('img');
					for (var i=0; i<imgs.length; i++) {
						if (imgs[i].src) {
							if (xvalue==1) {
								imgs[i].src = src_true;
							} else {
								imgs[i].src = src_false;
							}
						}
					}
					// handle "dbable_expires" updating
					if (parts.length>5) {
						if ($(parts[4])) {
							$(parts[4]).innerHTML = parts[5];
						}
					}
				}
			} else {
				if (xvalue == 'error') {
					alert('Error : dbtoggle : '+originalRequest.responseText);
				}
			}
		}
	} catch(e) {}
}
function getnav(outas) {
	try {
		if ($F('start').length > 1 && $F('stop').length > 1) {
			if (outas=='csv' || outas=='tab') {
				window.location.href='/orders/index/'+$F('user_id')+'/'+$F('start')+'/'+$F('stop')+'/'+$F('limit')+'/'+outas;
			} else {
				window.location.href='/orders/index/'+$F('user_id')+'/'+$F('start')+'/'+$F('stop')+'/'+$F('limit');
			}
		} else {
			alert('Please enter a start and stop range as any textual date format, incuding relative times like "-1 week" or "+3 days".');
		}
		return false;
	} catch(e) {
		return true;
	}
}

/**
* junky hack to get non-oils in place
* -- edit --
*/

function nonoilcheck() {
	isnonoil = false;
	if (typeof(nonoilcatids)=="object") {
		if ($('OilCategoryId')) {
			var catid = $F('OilCategoryId');
			for (var i=0; i<nonoilcatids.length; i++) {
				if (nonoilcatids[i]==catid) {
					isnonoil = true;
				}
			}
		}
	}
	if (isnonoil) {
		change_edit_nonoil();
	} else {
		change_edit_oil();
	}
}
function change_edit_nonoil() {
	if ($('tr1k').title=='') {
		$('tr1k').title='Enter a price here, per unit';
		// relabel
		var labels = $('tr1k').getElementsByTagName('label');
		for (var i=0; i<labels.length; i++) {
			labels[i].innerHTML = labels[i].innerHTML.replace(/1 kg/gi,'1pc').replace(/1kg/gi,'1pc');
		}
		var labels = $('tr1k5').getElementsByTagName('label');
		for (var i=0; i<labels.length; i++) {
			labels[i].innerHTML = labels[i].innerHTML.replace(/5 kg/gi,'1pc').replace(/5kg/gi,'5pc');
		}
		var labels = $('tr1k15').getElementsByTagName('label');
		for (var i=0; i<labels.length; i++) {
			labels[i].innerHTML = labels[i].innerHTML.replace(/15 kg/gi,'1pc').replace(/15kg/gi,'15pc');
		}
		// force nondbable
		$('dbable_1').checked = false;
		// hide stuff
		for (var i=0; i<nonoil_togllers.length; i++) {
			Element.hide(nonoil_togllers[i]);
		}
	}
}
function change_edit_oil() {
	if ($('tr1k').title!='') {
		$('tr1k').title='';
		// relabel
		var labels = $('tr1k').getElementsByTagName('label');
		for (var i=0; i<labels.length; i++) {
			labels[i].innerHTML = labels[i].innerHTML.replace(/1pc/gi,'1 kg');
		}
		var labels = $('tr1k5').getElementsByTagName('label');
		for (var i=0; i<labels.length; i++) {
			labels[i].innerHTML = labels[i].innerHTML.replace(/5pc/gi,'5 kg');
		}
		var labels = $('tr1k15').getElementsByTagName('label');
		for (var i=0; i<labels.length; i++) {
			labels[i].innerHTML = labels[i].innerHTML.replace(/15pc/gi,'15 kg');
		}
		// unhide stuff
		for (var i=0; i<nonoil_togllers.length; i++) {
			Element.show(nonoil_togllers[i]);
		}
	}
}












