// Place your application-specific JavaScript functions and classes here
// This file is automatically included by javascript_include_tag :defaults

var	isIE = (navigator.userAgent.indexOf("MSIE") != -1);

if(isIE) {
	var version = (parseFloat(navigator.userAgent.split("MSIE")[1]));
	isIE = (version < 8);
}

function open_color_picker() {
	$('color_picker').show();
}

function choose_color(color_name, color_id) {
	$('chosen_color').style.background = "white";
	$('chosen_color').update(color_name);
	$('color_id').value = color_id;
}

//
// Deze functie kan worden gebruikt om de vergrote versie van een afbeelding in een popup te laten zien (via_link_to_function), 
// het id van de db_image moet worden meegegeven
//
function open_large_image(image_id) {
	window.open('/afbeelding/large_image?file_name=' + image_id, '', 'width=602, height=406, scrollbars=no, resizable=no');
}

//
// Used to correctly handle PNG transparency in Win IE 5.5 & 6
//
function correctPNG() {
	var arVersion = navigator.appVersion.split("MSIE");
	var version = parseFloat(arVersion[1]);
	
	if ((version >= 5.5) && (document.body.filters)) {
		for (var i = 0; i < document.images.length; i++) {
			var img = document.images[i];
			var imgName = img.src.toUpperCase();

			if (/\.PNG(\?\d+)?$/.test(imgName)) {
				var imgID = (img.id) ? "id = '" + img.id + "' " : "";
				var imgClass = (img.className) ? "class = '" + img.className + "' " : "";
				var imgTitle = (img.title) ? "title = '" + img.title + "' " : "title='" + img.alt + "' ";
				var imgStyle = "display: inline-block;" + img.style.cssText;

				if (img.align == "left")
					imgStyle = "float: left;" + imgStyle;
				if (img.align == "right")
					imgStyle = "float: right;" + imgStyle;
				if (img.parentElement.href)
					imgStyle = "cursor: hand;" + imgStyle;
			
				var strNewHTML = "<span " + imgID + imgClass + imgTitle +
								 " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";" +
								 "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader" +
								 "(src=\'" + img.src + "\');\"></span>"; 
				img.outerHTML = strNewHTML;
				i = i - 1;
			}
		}
	}
}

function update_order_status(id) {
	new Ajax.Request("/administratie/update_order_status/" + id, {ascynchronous: true, evalScripts: true});
}

function send_order_email(id) {
	new Ajax.Request("/administratie/send_order_email/" + id, {ascynchronous: true, evalScripts: true});
}

function generate_invoice(view_id, order_id, view_index, collection_view_id, collection_view_index, offset) {
	if (desktop.all_views[collection_view_index].base_model == 'Order') {
		if (confirm('Wilt u de factuur aanmaken?'))
			new Ajax.Request('/administratie/generate_invoices/' + view_id + '?order_id=' + order_id + '&view_index=' + view_index + '&collection_view_id=' + collection_view_id + '&collection_view_index=' + collection_view_index + '&offset=' + offset, 
{ascynchronous: true, evalScripts: true});
	} else {
		alert("Deze actie is alleen toegestaan in het orders tabblad");
	}
}

function generate_reminder(view_id, order_id, view_index, collection_view_id, collection_view_index, offset) {
	if (desktop.all_views[collection_view_index].base_model == 'Order') {
		if (confirm('Wilt u de 1e herinnering aanmaken?'))
			new Ajax.Request('/administratie/generate_reminders/' + view_id + '?order_id=' + order_id + '&view_index=' + view_index + '&collection_view_id=' + collection_view_id + '&collection_view_index=' + collection_view_index + '&offset=' + offset, 
{ascynchronous: true, evalScripts: true});
	} else {
		alert("Deze actie is alleen toegestaan in het orders tabblad");
	}
}

function generate_second_reminder(view_id, order_id, view_index, collection_view_id, collection_view_index, offset) {
	if (desktop.all_views[collection_view_index].base_model == 'Order') {
		if (confirm('Wilt u de 2e herinnering aanmaken?'))
			new Ajax.Request('/administratie/generate_second_reminders/' + view_id + '?order_id=' + order_id + '&view_index=' + view_index + '&collection_view_id=' + collection_view_id + '&collection_view_index=' + collection_view_index + '&offset=' + 
offset, {ascynchronous: true, evalScripts: true});
	} else {
		alert("Deze actie is alleen toegestaan in het orders tabblad");
	}
}

function generate_exhortation(view_id, order_id, view_index, collection_view_id, collection_view_index, offset) {
	if (desktop.all_views[collection_view_index].base_model == 'Order') {
		if (confirm('Wilt u de aanmaning aanmaken?'))
			new Ajax.Request('/administratie/generate_exhortations/' + view_id + '?order_id=' + order_id + '&view_index=' + view_index + '&collection_view_id=' + collection_view_id + '&collection_view_index=' + collection_view_index + '&offset=' + offset, 
{ascynchronous: true, evalScripts: true});
	} else {
		alert("Deze actie is alleen toegestaan in het orders tabblad");
	}
}

function print_invoices(view_index, view_id) {
	if (desktop.all_views[view_index].base_model == 'Order') {
		open_popup('/administratie/print_invoices/' + view_id + '?index=' + view_index, null, 'Print facturen...');
	} else {
		alert("Deze actie is alleen toegestaan in het orders tabblad");
	}
}

function update_statusses(view_index, view_id) {
	if (desktop.all_views[view_index].base_model == 'Order') {
		if (confirm('Wilt u de statussen wijzigen voor de getoonde orders?'))
			new Ajax.Request('/administratie/update_statusses/' + view_id + '?index=' + view_index, {ascynchronous: true, evalScripts: true});
	} else {
		alert("Deze actie is alleen toegestaan in het orders tabblad");
	}
}

function export_invoices() {
	new Ajax.Request('/administratie/export_invoices');
}


function select_all() {
	var form_elements = $('orders_form').elements;
	for(var i=0;i<form_elements.length; i++) {
		if(form_elements[i].type == "checkbox") {
			form_elements[i].checked = true;
		}
	}
}

function deselect_all() {
	var form_elements = $('orders_form').elements;
	for(var i=0;i<form_elements.length; i++) {
		if(form_elements[i].type == "checkbox") {
			form_elements[i].checked = false;
		}
	}
}

function open_invoice_editor(document_id, document_name, options) {
	var url = "/dossier/open_document/"+document_id+"/";
	url += "?model="+options.model;
	url += "&object_id="+options.object_id;
	url += "&index="+options.index;
	
	
	var width = 1000;
	var height = 800;
	var left = (screen.width - width) / 2;
	var top = 0;

	window.open(url, document_name,'height=' + height + ', width=' + width + ', left=' + left + ', top=' + top + ', scrollbars=yes, resizable=yes');
}

