/*
 *  KWEB - Content Management System
 *  
 *  Copyright (C)2003-2006 Rafał Lindemann, STAMINA
 *  http://www.stamina.pl/kweb/
 *
 *  $Id: edit.js 418 2007-10-01 10:22:07Z hao $
 *
 *  This source code is protected by copyright laws! It's NOT free or open!
 *  Please READ license information in /Readme.txt, or check the website FIRST! 
 */


var kweb_modified = false;

function kweb_edit_window(url, w, h) {
	var dlg = window.open(url, "kweWindow" , "toolbar=no,menubar=no,personalbar=no,width="+w+",height="+h+", scrollbars=yes,resizable=yes,modal=yes,dependable=yes");
}

function kweb_edit_newlocation(url) {
	var dlg = window.open(url, "_blank");
}


function kweb_edit_selector(url, acceptFunc) {
	var dlg = window.open(url, "kweSelector" , "toolbar=no,menubar=no,personalbar=no,width=800,height=500, scrollbars=yes,resizable=yes,modal=yes,dependable=yes");
//	dlg.__opener = window;
	window.__selectAcceptFunc = acceptFunc;
}

function _kweb_edit_addlink_accept(id) {
	window.__select_addlink_field.value = id;
	window.__select_addlink_form.submit();
}

function kweb_edit_select_addlink(url, form, field) {
	window.__select_addlink_field = field;
	window.__select_addlink_form = form;
	kweb_edit_selector(url, _kweb_edit_addlink_accept);
}

function kweb_edit_select_addlocation(url, form, field) {
	kweb_edit_select_addlink(url, form, field);
}


function kweb_get_form_id(id) {
	return id.match(/^(kwe\[.+?\])/)[1];
}

function kweb_get_form_enabled_id(id) {
	var found = id.match(/^(kwe\[.+?\])(\[.+?\])/);
	return found[1] + '[_posting]' + found[2];
}


function kweb_edit_changed(input) {
	var name;
	if (typeof(input) == 'string') {
		name = input;
	} else {
		name = input.name;
	}
	var formId = kweb_get_form_id(name) + '[_post]';
	document.kwe[formId].checked = true;
	var enabledId = kweb_get_form_enabled_id(name);
	if (document.kwe[enabledId]) {
		document.kwe[enabledId].checked = true;
	}
	kweb_modified = true;
}

function kweb_confirm_exit() {
	if (kweb_modified == true) {
		kweb_set_modified(false);
		return confirm('Wprowadziłeś jakieś zmiany. Czy na pewno chcesz przejść do innego dokumentu?');
	}
	return true;		
}

function kweb_set_modified(val) {
	kweb_modified = val;
		
}

function kweb_check_exit() {
	if (kweb_modified == true) {
		kweb_set_modified(false);
		alert('Nie zapisałeś zmian! Możesz jeszcze cofnąć stronę i ją zapisać...');
		
	}
}

function kweb_show_more_attributes(ids, sel) {
	var visible = false;// document.getElementById(ids[0]).style.display == 'none';

	for (var i = 0; i < ids.length; ++i) {
		document.getElementById(ids[i]).style.display = visible ? 'none' : 'table-row';
	}
	
	sel.style.display = 'none';
	
}

function kweb_postit(el, params) {
	// znajdujemy form
	var parent = el;
	var form = null;
	while (parent && parent.tagName) {
		if (parent.tagName.toLowerCase() == 'form') {
			form = parent;
			break;
		}
		parent = parent.parentNode;
	}
	if (!form) return;
	
	var inputs = new Array();
	
	for (key in params) {
		if (form[key]) {
			// ustawiamy wartość
			form[key].value = params[key];
		} else {
			var input = document.createElement("input");
			inputs.push(input);
			input.setAttribute("type", "hidden"); 
			input.setAttribute("name", key); 
			input.setAttribute("value", params[key]); 
			form.appendChild(input);
		}
	}
	
	kweb_set_modified(false); 
	form.submit();

	for (i in inputs) {
		//form.removeChild(inputs[i]);
	}
	
}

function kweb_on_unload(e) {
	kweb_check_exit();
}



if (window.addEventListener) {
	window.addEventListener('unload', kweb_on_unload, true);
}


