/** @coding ISO2
 */

var id;
var info;
var prod;
var p_name;
var quantity;
var sess_id;
var price;
var date;
var curPos;
var basketHide;
function setCur(evt) {
    if (evt.pageY) curPos = evt.pageY-50;
    else
    if (document.documentElement)
	if (document.documentElement.scrollTop)
	    curPos = document.documentElement.scrollTop+200;
	else
	    curPos = 200;
}
function setProduct( pid, pname, _sess_id, _price, _date) {
    appear('e');
    if (navigator.appName != "Microsoft Internet Explorer")
	$('e').style.top = curPos+'px';
    else
	$('e').style.top = curPos;
    if (basketHide) clearTimeout(basketHide);

    $('e').innerHTML = "<img src=\"../images/koszyk_icon.png\" align=\"left\"><div id=\"prod\"></div><br><div id=\"quant_line\">Dodaj: <input type=text value=\"1\" id=quantity style=\"width:30px;\"> szt.</div><div align=\"right\"><input type=button value=\"Dodaj\" class=\"filterButton\" onclick=\"basketAdd();\"><input type=button value=\"Anuluj\" class=\"filterButton\" onclick=\"disappear(\'e\');\">";
  
    sess_id = _sess_id;
    price = _price;
    date = _date;
    id = pid;
    p_name = pname;
    $('prod').innerHTML = "Produkt: <b>"+p_name+"</b> .<br>";
//  $('quantity').focus();
} 
function basketAdd() {
    LoadData('basket','?mode=shop&exec=Add&arguments[id]='+sess_id+'&data=Basket&arguments[product_id]='+id+'&arguments[quantity]='+$('quantity').value+'&arguments[product_name]='+p_name+'&arguments[price]='+price+'&arguments[date_product_added]='+date);
    $('e').innerHTML = "Produkt <b>"+p_name+"</b> dodany do koszyka.";
    basketHide = setTimeout("disappear('e')",1000);
}

function basketInc(pID) {
    LoadData('mainData','?mode=shop&data=Basket&exec=Edit&Inc&product_id='+pID);
}
function basketDec(pID) {
    LoadData('mainData','?mode=shop&data=Basket&exec=Edit&Dec&product_id='+pID);
}

getURLData = function () {
    var Loc = location.href.split("?");
    var sep = (Loc[1]) ? '&' : '?';
    var _link = Loc[0]+'?';
    urlquery = location.href.split("?");
    urlterms = (urlquery[1]) ? urlquery[1].split("&") : '';
    return Array(_link, urlterms);
}

goNextPage = function (direction, pageNo) {
    Loc = getURLData();
    var _link = Loc[0];
    var urlterms = Loc[1];
    var page = 0;
    var Direction = (direction) ? -1 : 1;

    for (i=0 ; i < urlterms.length;i++) {
	_var = urlterms[i].split('=');
	if (_var[0] == 'Page') {
	    page = (pageNo) ? pageNo : parseInt(_var[1])+parseInt(Direction);
	    urlterms[i] = '';
	    continue;
	}
	else if (urlterms[i] != '') _link += urlterms[i]+'&';
    }
    if (page > 0) _link += 'Page='+page;
    else _link += (pageNo) ? 'Page='+pageNo : 'Page=2';
    Go(_link);
}
sortChanged = function () {
    var sortSelect = $('sortSelect');
    if (sortSelect.selectedIndex == 0) return false;

    _sort = sortSelect.options[sortSelect.selectedIndex].value.split(",");
    goSort(_sort[1], _sort[0]);
}

viewChanged = function () {
    var viewSelect = $('viewSelect');
    if (viewSelect.selectedIndex == 0) return false;

    _view = viewSelect.options[viewSelect.selectedIndex].value;
    goView(_view);
}

goView = function (viewName) {
    Loc = getURLData();
    var _link = Loc[0];
    var urlterms = Loc[1];

    for (i=0 ; i < urlterms.length;i++) {
	_var = urlterms[i].split('=');
	if (_var[0] == 'productList') {
	    continue;
	}
	if (urlterms[i]) _link += urlterms[i]+'&';
    }
    if (viewName) _link += 'productList='+viewName;
    Go(_link);
}

goSort = function (direction, _name) {
    Loc = getURLData();
    var _link = Loc[0];
    var urlterms = Loc[1];
    var Direction = (direction) ? direction : 'Asc';

    for (i=0 ; i < urlterms.length;i++) {
	_var = urlterms[i].split('=');
	if (_var[0] == 'orderAsc' || _var[0] == 'orderDesc' || _var[0] == 'order') {
	    continue;
	}
	if (urlterms[i]) _link += urlterms[i]+'&';
    }
    if (_name) _link += 'order'+Direction+'='+_name;
    Go(_link);
}

loadOffer = function (sess_id) {
    oferta = window.open('http://www.aktin.pl/exec.php?mode=shop&data=ShowOffer&PHPSESSID='+sess_id, 'oferta',
	'menubar=no, toolbar=no, location=no, scrollbars=yes, ' +
	'resizable=yes, status=no,width=800, height=500');
}
checkOrderData = function () {
    var stop = false;
    var cname = $('oname');
    var email = $('oemail');
    var address1 = $('address1');
    var postal_code = $('postal_code');
    var city = $('Regcity');
    var companyName = $('companyName');
    var phone = $('phone');
    var orderForm = 'OrderForm';
    var mainData = 'mainData';
    res = '';
    if (cname.value == '') res += "* Nie podano Nazwiska<br><br>";
    if (address1.value == '') res += "* Nie podano ulicy<br><br>";
    if (city.value == '') res += "* Nie podano miasta<br><br>";
    if (email.value == '') res += "* Nie podano Adresu E-mail<br><br>";
    if (phone.value == '') res += "* Nie podano numeru Telefonu<br><br>";

    if (res) {
	res = "<b>Prosze uzupełnić wszystkie wymagane pola.</b> <br><br><blockquote style='text-align:left;'>"+res+"</blockquote>";
	userAlert(res);
	return false;
    }
    else saveMyForm(orderForm, mainData);
}
checkLoginData = function () {
    var stop = false;
    var lname = $('login_name');
    var lpass = $('login_password');
    var orderForm = 'OrderForm';
    var mainData = 'mainData';
    res = '';
    if (lname.value == '') res += "* Nie podano nazwy Użytkownika<br><br>";
    if (lpass.value == '') res += "* Nie podano hasla<br><br>";
    if (res) {
	res = "<b>Proszę uzupełnić wszystkie wymagane pola.</b> <br><br><blockquote style='text-align:left;'>"+res+"</blockquote>";
	userAlert(res);
	return false;
    }
    else saveMyForm(orderForm, mainData);
}
userAlert = function(alertMsg, autoHide) {
    var eLayer = $('systemAlert');
    var _alertMsg = $('alertMsg');
    var _autoHide = autoHide;
    if (window.attachEvent && !window.opera)
	eLayer.top = curPos+'px';
    else    eLayer.style.top = curPos;
    if (alertMsg) {
	_alertMsg.innerHTML = alertMsg;
	Effect.Appear(eLayer);
    }
    if (_autoHide) setInterval("Effect.Fade('userAlert');", 1200);
}

targetID = 'productData';
saveForm = function (id, allFields) {
    var myForm = $(id);
    var alertMsg = '';
    if (allFields) {
	var inputs = myForm.getInputs('text');
	for (i in inputs) {
	    if (inputs[i].value == '') {
		try {
		    $(inputs[i].id).style.border = '2px solid red';
		}
		catch (e) {
		    inputs[i].id = i+'_id';
		    $(inputs[i].id).style.border = '2px solid red';
		}//Element.setStyle(inputs[i].id ,'border: 1px solid red');
		if (!alertMsg) alertMsg = 'Proszę uzupełnić wszystkie pola.'
	    }
	}
	if (alertMsg) {
	    userAlert(alertMsg);
	    alertMsg = '';
	    return false;
	}
    }
    myForm.request( {
	onComplete: function(transport) {
	    $(targetID).innerHTML = transport.responseText;
	    Element.hide('spinner');
	    userAlert('Dane zostały zapisane.', 1);
	}
    });
}
saveMyForm = function (id, targetID) {
    var myForm = $(id);
    myForm.request( {
	onComplete: function(transport) {
	    if (targetID) $(targetID).innerHTML = transport.responseText;
	    Element.hide('spinner');
	}
    });
}
function appear(id) {
    if (!id) return false;
    formLay = $(id)
    Effect.Appear(formLay);
}
function disappear(id) {
    if (!id) return false;
    formLay = $(id);
    Effect.Fade(formLay);
}

var active = Array();
var z = 0;
function Switch(o) {
    try {
	Effect.toggle($(o),'blind');
	if (active && active.style.display != 'none') Effect.toggle(active,'blind');
    }
    catch (e) {}
    active = $(o);
    return false;
}
var activeProg;
function showProg(o) {
    if(!o.id) o = $(o);
    obj = $(o.id);
    if (obj.style.display == 'block') {
	obj.style.display = 'none';
	activeProg = '';
    }
    else {
	obj.style.display = 'block';
	try {
	    activeProg.style.display = 'none';
	}
	catch (e) {
	    e='';
	}
	activeProg = obj;
    }
}
function hideProg(o) {
    Effect.Fade(o);
    activeProg = '';
}
function showInfo(mid,uid,box) {
    info = $('e');
    info.style.display = 'block';
    frame = $('inframe');
    frame.src = (box.checked) ? 'modules/set_module.php?mid='+mid+'&oper=set&uid='+uid :
    frame.src = 'modules/set_module.php?mid='+mid+'&oper=unset&uid='+uid;
    setTimeout("info.style.display = 'none';",1250);
}
function goEdit(mode, id) {
    Go('?mode='+mode+'&exec=Edit&item='+id);
}
function goDel(mode, id, _data) {
    var d;
    if (_data) d = '&data='+_data; else d = '';
    if (confirm('Czy napewno usun±ć? '))
	Go('?mode='+mode+d+'&exec=Delete&item='+id);
}
function goPermDel(mode, id, _data) {
    var d;
    if (_data) d = '&data='+_data; else d = '';
    if (confirm('Czy napewno usun±ć? '))
	Go('?mode='+mode+d+'&exec=PernamentDelete&item='+id);
}
function productDel(id) {
    if (confirm('Czy napewno usun±ć? '))
	LoadData('productData', '?mode=shopManager&data=Product&exec=Delete&item='+id);
}
function goOrder(mode, id) {
    Go('?mode='+mode+'&exec=Order&item='+id);
}
function goCat(CatID, DepID)
{
    if (!DepID) DepID = '';
    if (!CatID) CatID = '';
    Go('?mode=shop&data=Product&CategoryID='+CatID+'&DepID='+DepID);
}
function goProduct(id, CatID, DepID) {
    if (!DepID) DepID = '';
    if (!CatID) CatID = '';
    //LoadData('mainData','?mode=shop&data=Product&item='+id+'&CategoryID='+CatID+'&DepID='+DepID);
    Go('?mode=shop&data=Product&item='+id+'&CategoryID='+CatID+'&DepID='+DepID);
}
function LoadData(o, _url, module ) {
    var url = (module) ? _url : '/exec.php'+_url;
    var req = new Ajax.Request(url, {
	asynchronous:false
    } );
    if(o) {
	if(!o.id) o = $(o);
	obj = $(o.id);
	o.innerHTML = req.transport.responseText;
    }
}
function checkemail(str){
    var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
    if (filter.test(str))
	testresults=true
    else{
	alert("Wpisz poprawny adres e-mail")
	testresults=false
    }
    return (testresults)
}
function checkRegForm() {
    var stop = false;
    var email = $('email');
    var cname = $('name');
    var address2 = $('address2');
    var phone = $('phone');
    var pass1 = $('arguments[password]');
    var pass2 = $('password2');
  
    if (!checkemail(email.value)) return false;
    if (pass1 && (pass1.value != pass2.value || pass1.value == '')) {
	alert('Podane hasla sa różne');
	return false;
    }
  
    if (phone.value == '') {
	alert('Prosze podac telefon kontaktowy');
	return false;
    };
    if (cname.value == '') {
	alert('Prosze podac nazwisko');
	return false;
    };	
    document.registerForm.submit();
}
Go = function(url) {
    location.href = url;
}

var selectList;
var currentOptions = '';
var selID = '';
setOptions = function () {
    if (!selectList) selectList = $('catList');
    if (selectList.selectedIndex == 0 && !selID) {
	return false;
    }
    if (selID) {
	var newSelect = $(selID);
    }
    else       {
	var newSelect = $('courses_'+selectList.options[selectList.selectedIndex].value);
    }
	
    selID = '';
    if (currentOptions) {
	$(currentOptions).name = '';
	$(currentOptions).style.display = 'none';
    }
	
    newSelect.name = 'arguments[temat]';
    newSelect.style.display = '';
	
    currentOptions = newSelect.id;
}
var resultID = 'courseData';
saveForm = function (id, allFields) {
    var myForm = $(id);
    var alertMsg = '';

    if (allFields) {
	var inputs = myForm.getInputs('text');
	for (i in inputs) {
	    if (inputs[i].value == '') {
		try {
		    $(inputs[i].id).style.border = '2px solid red';
		}
		catch (e) {
		    inputs[i].id = i+'_id';
		    $(inputs[i].id).style.border = '2px solid red';
		}
		//Element.setStyle(inputs[i].id ,'border: 1px solid red');
		if (!alertMsg) alertMsg = 'Fill all Fields marked red, please.'
	    }
	}
	if (alertMsg) {/* userAlert(alertMsg);alertMsg = '';*/
	    return false;
	}
    }
    myForm.request( {
	onComplete: function(transport) {
	    $(resultID).innerHTML = transport.responseText;
	    Element.hide('spinner');
	// 			userAlert('This Transaction has been saved.', 1);
	}
    });
}
loadEdit = function(mode, id) {
    LoadData('courseData','?mode='+mode+'&exec=Edit&item='+id);
}
loadDel = function(mode, id) {
    if (confirm('Czy napewno usun±ć? '))
	LoadData('courseData','?mode='+mode+'&exec=Delete&item='+id);
}

LoadSort = function (_Link ,Direction) {
    var Dir = (Direction) ? Direction+'=true' : '';
    var _link = '?';

    urlquery=_Link.split("?");
    urlterms=urlquery[1].split("&");

    for (i=0 ; i < urlterms.length;i++) {
	_var = urlterms[i].split('=');
	if (_var[1]) {
	    _link += urlterms[i]+'&';
	}
    }

    LoadData('courseData',_link+Dir);
}

setFlag = function (mode, Data, id, img, flag, confirmation) {
    myString = new String(img.src);
    rExp = /error.png/gi;
    if (confirmation) {
	if (!confirm('Czy napewno ustawić '+flag+' ?')) return false;
    }
    if (myString.search(rExp) > 0 ) {
	promo = '1';
	img.src = 'images/clean.png';
    }
    else {
	promo = '0';
	img.src = 'images/error.png';
    }
    LoadData('inframe','?mode='+mode+'&data='+Data+'&exec=Update&arguments[id]='+id+'&arguments['+flag+']='+promo);
    return true;
}
function setAvailable(mode, Data, id, img) {
    myString = new String(img.src);
    rExp = /error.png/gi;
    if (myString.search(rExp) > 0 ) {
	promo = '1';
	img.src = 'images/clean.png';
    }
    else {
	promo = '0';
	img.src = 'images/error.png';
    }
    LoadData('','?mode='+mode+'&exec=Update&arguments[id]='+id+'&data='+Data+'&arguments[is_active]='+promo);
}
goStatus = function (mode, id) {
    Go('?mode='+mode+'&StatusID='+id);
}
function setCatPromo(mode, box, id) {
    promo = (box.checked) ? 1 : 0;
    LoadData('','?mode='+mode+'&exec=Update&arguments[id]='+id+'&data=Product&arguments[on_catalog_promotion]='+promo);
}
function setDepPromo(mode, box, id) {
    promo = (box.checked) ? 1 : 0;
    LoadData('','?mode='+mode+'&exec=Update&arguments[id]='+id+'&data=Product&arguments[on_department_promotion]='+promo);
}
checkRef = function () {
    var categoryID = $('categoryID');
    var categoryRef = $('categoryRef');
  
    if (categoryRef.selectedIndex == categoryID.selectedIndex) {
	alert('Nie można dowi±zać kategorii do samej siebie!');
	return false;
    }
    if (categoryRef.selectedIndex == 0 || categoryID.selectedIndex == 0) {
	alert('Nie chyba nie wybrałe¶ jednej z kategorii');
	return false;
    }
    //   alert('Go!');
    return true;
}
LoadProducts = function() {
    var categoryRef = $('categoryRef');
    if (categoryRef.selectedIndex > 0) {
	LoadData('productSelect','?mode=shopManager&data=ProductRef&exec=getProducts&cid='+categoryRef.options[categoryRef.selectedIndex].value);
    }
    else   alert('¬le wybrałe¶ kategorie');
}
