//------------------------------
var current_val = new Array();
var list_of_blocks = new Array();
var list_of_z = new Array();
var current_loader_id = '';
var all	= '';
var hidden_element = '';
var send_to = '';
//------------------------------
function check_changes_in(change) {
	returned = false;
	for(iii = 0; iii < list_of_blocks.length; iii++) {
		if(change == list_of_blocks[iii]) {
			returned = true;
		}
	}
	return returned;
}
//------------
function some_changes_success(msg) {
	alert( "Data Saved: " + msg );
	
};
//------------
function get_select_name(it) {
	id = $(it).attr('id');
	return id.substring(id.lastIndexOf("_")+1);
}
//------------
function some_changes_data() {
	res = "";
	all.each(function(){
		res = res+get_select_name(this)+"/"+$(this).val()+"/";
	});	
	return res;
};
//------------
function set_loader(it) {
	all.attr("disabled",true).each(function() {
		current_val[$(this).attr('id')] = $(this).val();
	});
	/*
	if(thisisnofuckingie) {
		name = get_select_name(it);
		for(i = 0; i < list_of_z[name].length; i++) {
			$("#form_item_id_"+list_of_z[name][i]).append('<option class="updating_string" value="|~|">updating...</option>').val("|~|");
		}
	}
	*/
}
//------------
function unset_loader() {
	//$(".updating_string").remove();
	all.attr("disabled",false);
}
//------------
function get_val_in_select(it) {
	name = get_select_name(it);
	if(list_of_z[name].length > 0) {
		for(i = 0; i < list_of_z[name].length; i++) {
			$("#form_item_id_"+list_of_z[name][i]).val(0);
		}
	}
	if($(it).val() != 0) {
		return true;
	} else {
		return false;
	}
}
//------------
function some_changes(it) {
	$("#hidden_"+hidden_element).val('');
	if(get_val_in_select(it)) {
		$.ajax({
			type: "POST", 
			url: "/"+send_to+"/change/"+some_changes_data()+"current/is_"+get_select_name(it)+"/", 
			beforeSend: set_loader(this), 
			success: function(msg) {
				if(msg.substring(0,4) == "good") {
					unset_loader();
					var changes = msg.split("|~|");
					for(i = 1; i < changes.length; i++) {
						if(check_changes_in(changes[i])) {
							var name = changes[i];
							select = changes[(i+1)].split("~");
							list_is = false;
							var curr = 0;
							for(j = 0; j < select.length; j++) {
								if(select[j] == "list") {
									list_is = true;
									var list = new Array();
									tmp = select[(j+1)].split("|");
									for(k = 0; k < tmp.length; k++) {
										list[k] = tmp[k].split("=");
									}
									$("#form_item_id_"+name).html();
								}
								if(select[j] == "curr") {
									curr = select[(j+1)];
								}
							}
							if(list_is) {
								htm = '';
								for(k = 0; k < list.length; k++) {
									if(curr == list[k][0]) {
										htm = htm+'<OPTION selected value="'+list[k][0]+'">'+list[k][1]+'</OPTION>'+"\n";
									} else {
										htm = htm+'<OPTION value="'+list[k][0]+'">'+list[k][1]+'</OPTION>'+"\n";
									}
								}
								$("#form_item_id_"+name).html(htm);
							}
							$("#form_item_id_"+name).val(curr);
							current_val["form_item_id_"+name] = curr;
						}
						if(changes[i] == hidden_element) {
							$("#hidden_"+hidden_element).val(changes[(i+1)]);
						}
					}
				} else {
					alert(msg);
				}
			} 
		});
	}
};
//------------------------------

