
var cp = new cpaint();
var loader = '<div class="loader"><img src="/_i/loading1.gif" /> proszę czekać...</div>'

//blokada antyspamowa
var blocker = false;
var block_msg = "Proszę czekać, żądanie w trakcie realizacji...";
var del_msg = "Czy na pewno chcesz usunąć ten rekord?";

//cp.set_debug(2);

if (cp.capable != true) {
    alert('your browser does not support the features on this page');
}

cp.set_transfer_mode('POST');
cp.set_response_type('TEXT');

/* _______________________ FUNKCJE AX __________________________________ */


//pobranie listy edycji dla danego czasopisma
function CalcPremium(obj) {
    if (blocker == false) {
        var poststr = submitFormValues(obj);
        //alert(poststr);
        cp.call('/response.php', 'CalcPremium', showCalcPremium, poststr);
        preloading('calcpremium');
        blocker = true;
    } else {
        alert(block_msg);
    }
}

//wyswietlenie odpowiednich danych na warstwie
function showCalcPremium(res) {
    de('calcpremium').innerHTML = res;
    blocker = false;
}


/* _______________________ END: FUNKCJE AX __________________________________ */


/* _______________________ FUNKCJE OGOLNE NIE AX _______________________ */
//prostsze pobieranie document.getElementById...
function de(id) {
    return document.getElementById(id);
}
function dc(name) {
    return document.getElementsByClassName(name);
}

// funkcja preloader
function preloading(idname) {
    de(idname).innerHTML = loader;
}


//pobranie wartosci z formularza (form id="xxx")
function getFormValues(obj) {
    var rArray = Array(0);
    //var fElements = document.forms[0].elements;
    var fElements = obj.elements;
    var encodeValues = false;

    if (fElements.length == 0) return false;
    try {
        for (i=0; i<fElements.length; i++) {
            var element = fElements[i];
            var tag = element.tagName.toLowerCase();

            if (tag == 'input') {
                if ((element.type.toLowerCase() == 'text') ||
                (element.type.toLowerCase() == 'password') ||
                (element.type.toLowerCase() == 'hidden'))
                //alert (element.value);
                if (encodeValues == true) rArray[rArray.length] = Array(element.name, encodeURI(element.value));
                else rArray[rArray.length] = Array(element.name, escape(element.value));

                else
                if (((element.type.toLowerCase() == 'checkbox') ||
                (element.type.toLowerCase() == 'radio')) && (element.checked))
                if (encodeValues == true) rArray[rArray.length] = Array(element.name, encodeURI(element.value));
                else rArray[rArray.length] = Array(element.name, escape(element.value));
            }
            else
            if ((tag == 'select')||(tag == 'textarea'))
            if (encodeValues == true) rArray[rArray.length] = Array(element.name, encodeURI(element.value));
            else rArray[rArray.length] = Array(element.name, escape(element.value));
        }
        //alert(rArray);
        return rArray;
    }
    catch(e) {
        return false;
    }
}

function submitFormValues(obj) {
    var formValues = getFormValues(obj);
    //var formValues = document.getElementById(obj);

    var poststr = "myT=1";
    for (i=0; i<formValues.length; i++) {
        poststr += "&" + formValues[i][0] + "=" + formValues[i][1];
    }
    //alert (poststr);
    //cp.call('/response.php', 'addProdCart', showKoszykStatus, poststr);
    return poststr;
}

//obsluga funkcji do wyswietlania/ukrywania komunikatow
var g_iCount = "";
var g_iName = "";

function showHideInfo(nameId, timeCntDown) {
    g_iCount = timeCntDown;
    g_iName = nameId;
    getScrolling(g_iName);
    //chowanie selectow
    hideSelects();
    startCountdown();
}
function startCountdown () {
    if ((g_iCount - 1) >= 0) {
        g_iCount = g_iCount-1;
        //document.getElementById('numberCountdown').innerHTML = "dupa" + g_iCount;
        setTimeout("startCountdown()", 1000);
    } else {
        closeDiv(g_iName);
    }
}


//IE hack
/*
if (! window.Node) {
var Node = {
ELEMENT_NODE: 		1,
ATTRIBUTE_NODE:		2,
TEXT_NODE:			3,
COMMENT_NODE:		8,
DOCUMENT_NODE:		9,
DOCUMENT_FRAGMENT_NODE:	11
}
}
*/
//sets tab title, title comes from button text
function set_title(button) {
    var tab_title = document.getElementById('tabTitle');
    if (tab_title)
    tab_title.firstChild.nodeValue = button.firstChild.nodeValue;
}

function showDiv(name) {
    var agt=navigator.userAgent.toLowerCase();
    var is_ie5 = ((parseInt(navigator.appVersion) == 4) && (agt.indexOf("msie 5.0")!=-1) && (agt.indexOf("opera") == -1));

    if (document.getElementById && !is_ie5) {
        obj=document.getElementById(name).style.visibility = "visible";
        document.getElementById(name).style.display = "inline";
    } else if (document.layers) {
        obj=document.layers[name].visibility = "show";
        document.layers[name].display = "inline";
    } else if (document.all) {
        obj=document.all[name].style.visibility = "visible";
        document.all[name].display = "inline";
    } else {
        obj=false;
    }
}

function closeDiv(name) {
    var agt=navigator.userAgent.toLowerCase();
    var is_ie5 = ((parseInt(navigator.appVersion) == 4) && (agt.indexOf("msie 5.0")!=-1) && (agt.indexOf("opera") == -1));

    if (document.getElementById && !is_ie5) {
        obj=document.getElementById(name).style.visibility = "hidden";
        document.getElementById(name).style.display = "none";
    } else if (document.layers) {
        obj=document.layers[name].visibility = "hide";
        document.layers[name].display = "none";
    } else if (document.all) {
        obj=document.all[name].style.visibility = "hidden";
        document.all[name].display = "none";
    } else {
        obj=false;
    }
    //przy okazji odslon selecty
    showSelects();
}

function getScrolling(divName) {
    var x = 0; var y = 0;
    if( typeof( window.pageYOffset ) == 'number' ) {
        //Netscape compliant
        y = window.pageYOffset;
        x = window.pageXOffset;
    } else if( document.body && ( document.body.scrollLeft ||
    document.body.scrollTop ) ) {
        //DOM compliant
        y = document.body.scrollTop;
        x = document.body.scrollLeft;
    } else if( document.documentElement &&
    ( document.documentElement.scrollLeft ||
    document.documentElement.scrollTop ) ) {
        //IE6 standards compliant mode
        y = document.documentElement.scrollTop;
        x = document.documentElement.scrollLeft;
    }
    //alert(x+","+y);
    showMyDiv(divName, y);
    return x+","+y;
}

function showMyDiv(name, y) {
    showDiv(name);
    document.getElementById(name).style.top = (y+200) +"px";
}

function getPracownicyFromBranze(id) {
	if (blocker == false) {
		cp.call('/response.php', 'getBranzaPracownik', showBranzaPracownik, id);
		preloading('pracownicy_branza');
		blocker = true;
	} else {
        alert(block_msg);
    }
}

//wyswietlenie odpowiednich danych na warstwie
function showBranzaPracownik(res) {
    de('pracownicy_branza').innerHTML = res;
    blocker = false;
}



/* _______________________ END: FUNKCJE OGOLNE NIE AX _______________________ */


// smiecie do sprawdzenia!


//pobranie produktu
function getProd(tid) {
    cp.set_response_type('TEXT');
    cp.call('/response.php', 'getProd', showResults, tid);
    document.getElementById('productDesc').innerHTML = loader;
}

//pobranie opisu i zdjecia danej kategorii
function changeCategory(kid, changeMenu) {
    cp.set_response_type('XML');
    cp.call('/response.php', 'changeCategoryDesc', showCatResults, kid, changeMenu);
    document.getElementById('productDesc').innerHTML = loader;
    //document.getElementById('cplistaproduktow').innerHTML = loader;
}

//pobranie listy odpowiednich danych do kategorii
function showDecodedResults(res) {
    cp.set_response_type('TEXT');
    document.getElementById('productDesc').innerHTML = unescape(res);
    //document.getElementById('productDesc').innerHTML = res;
}
function showKoszykStatus(res) {
    cp.set_response_type('TEXT');
    var info = "Product has successfully added to Yor basket!";
    if (res == 2) {
        document.getElementById('add2koszykstatus').style.backgroundColor = '#ff0000';
        document.getElementById('add2koszykstatus').style.color = '#ffffff';
        info = "Product is already in Your basket!";
    } else if (res == 1) {
        document.getElementById('add2koszykstatus').style.backgroundColor = '#efefef';
        document.getElementById('add2koszykstatus').style.color = '#000000';
        info = "Product has successfully added to Yor basket!";
    } else {
        document.getElementById('add2koszykstatus').style.backgroundColor = '#ff0000';
        document.getElementById('add2koszykstatus').style.color = '#ffffff';
        info = "Something is wrong...";
    }

    document.getElementById('add2koszykstatus').innerHTML = info;
    showHideInfo('add2koszykstatus', 3);

}

function showResults(res) {
    document.getElementById('productDesc').innerHTML = res;
}

function showProdLists(res) {
    //document.getElementById('productslist').innerHTML = res;
    document.getElementById('cplistaproduktow').innerHTML = res;

}

function showCatResults(result) {
    var res = result.getElementsByTagName('ajaxResponse')[0];
    var descs = retContent(res.getElementsByTagName('DescrTop')[0], 1);  //description
    var prods = retContent(res.getElementsByTagName('ProdList')[0], 1); //product list
    var cats = retContent(res.getElementsByTagName('CatRes')[0], 1); //category list
    var catnum = retContent(res.getElementsByTagName('CatNum')[0], 0)

    //res.getElementsByTagName('ProdList')[0].textContent;
    //var cats = res.getElementsByTagName('CatRes')[0].firstChild.data;

    if (cats != "null") {
        //cats = unescape(cats.replace(/\\/g, '%'));
        document.getElementById('cpSubmenuChange').innerHTML = cats;
    }
    //document.getElementById('subkat_'+catnum).className = "zaznaczone";

    document.getElementById('productDesc').innerHTML = descs;
    document.getElementById('cplistaproduktow').innerHTML = prods;
    centerLayer();
}

//funkcja do wyswietlania odpowiedniej tresci przy responseXML (mozilla vs reszta)
//obj = z responseXML (result.getElementsByTagName('ajaxResponse')[0].getElementsByTagName('DescrTop')[0])
//unEsc - czyszczenie stringow

function retContent(obj, unEsc) {

    if (obj.textContent != undefined) {
        parsedTEXT = obj.textContent;
    } else {
        parsedTEXT = obj.firstChild.data;
    }
    //czyszczenie stringu
    if (unEsc == 1) parsedTEXT = unescape(parsedTEXT.replace(/\\/g, '%'));

    return parsedTEXT;
}

function test () {
    var data = eval('(' + result + ')');
    for (var i=0; i<data.books.length; i++)
    {
        var x = document.createElement('div');
        x.className = 'book';
        var y = document.createElement('h3');
        y.appendChild(document.createTextNode(data.books[i].book.title));
        x.appendChild(y);
        var z = document.createElement('p');
        z.className = 'moreInfo';
        z.appendChild(document.createTextNode('By ' + data.books[i].book.author + ', ' + data.books[i].book.publisher));
        x.appendChild(z);
        var a = document.createElement('img');
        a.src = data.books[i].book.cover;
        x.appendChild(a);
        var b = document.createElement('p');
        b.appendChild(document.createTextNode(data.books[i].book.blurb));
        x.appendChild(b);
        document.getElementById('writeroot').appendChild(x);
    }
}


/* ********************* DO UPORZADKOWANIA FUNKCJE ********************


//pobranicze wybranego rekordu
function getMoreInfo(opt, id) {
cp.call('/response.php', 'getRecord', showResDescr, opt, id);
getScrolling();
document.getElementById('showDescr').innerHTML = loader;
}

//update danego rekordu
function updateRow(t, opt, field, val, id) {

var re = "on";
var status = t.src.search(re);

//jesli nie znajde on w sciezce, zmieniam obrazek
if (status == -1) {
val = 1;
} else {
val = 0;
}

cp.call('/response.php', 'updateRow', '', opt, field, val, id);
changeStatus(t);
}

//usuniecie rekordu
function delRow(opt, id) {
cp.call('/response.php', 'delRow', '', opt, id);
deleteSomething('post', id, 'You are about to delete this record.\n"OK" to delete, "Cancel" to stop.');
}

function changeStatus(t) {
//obrazki na strone
var On = new Image(); On.src = "/_i/img/on.png";
var Off = new Image(); Off.src = "/_i/img/off.png";
var loaderImg = new Image(); loaderImg.src = "/_i/loading1.gif";

var re = "on";
var status = t.src.search(re);
//alert(status);

//jesli nie znajde on w sciezce, zmieniam obrazek
if (status == -1) {
t.src = On.src;
} else {
t.src = Off.src;
}
}


//wyswietlenie listy
function showResults(res) {
document.getElementById('tableList').innerHTML = res;
}

//wyswietlenie listy
function showResDescr(res) {
document.getElementById('showDescr').innerHTML = res;
}
//sprawdzenia co wyswietla funkcja
function showRes(res) {
alert (res);
}
// ------------------------------------------ OLD || \\

//pobranie opisu i zdjecia danej kategorii
function changeCategory(kid) {
cp.call('/response.php', 'changeCategoryDesc', showResults, kid);
cp.call('/response.php', 'changeCategoryProd', showProdLists, kid);
document.getElementById('productDesc').innerHTML = loader;
}

function showProdLists(res) {

document.getElementById('productsList').innerHTML = res;
}

// _______________ funkcje zwykle _________________


//IE hack
if (! window.Node)
{
var Node = {
ELEMENT_NODE: 		1,
ATTRIBUTE_NODE:		2,
TEXT_NODE:			3,
COMMENT_NODE:		8,
DOCUMENT_NODE:		9,
DOCUMENT_FRAGMENT_NODE:	11
}
}

function show_tab(tab_id, display) {
var tabs = document.getElementById('tab_content').childNodes;
for (var i = 0; i < tabs.length; i++) {
if (tabs[i].nodeType == Node.ELEMENT_NODE)
tabs[i].style.display = 'none';
}
document.getElementById(tab_id).style.display = (display) ? display : 'block';
}

//sets tab title, title comes from button text
function set_title(button) {
var tab_title = document.getElementById('tabTitle');
if (tab_title)
tab_title.firstChild.nodeValue = button.firstChild.nodeValue;
}

function showDiv(name) {
var agt=navigator.userAgent.toLowerCase();
var is_ie5 = ((parseInt(navigator.appVersion) == 4) && (agt.indexOf("msie 5.0")!=-1) && (agt.indexOf("opera") == -1));

if (document.getElementById && !is_ie5) {
obj=document.getElementById(name).style.visibility = "visible";
document.getElementById(name).style.display = "inline";
} else if (document.layers) {
obj=document.layers[name].visibility = "show";
document.layers[name].display = "inline";
} else if (document.all) {
obj=document.all[name].style.visibility = "visible";
document.all[name].display = "inline";
} else {
obj=false;
}
}

function closeDiv(name) {
var agt=navigator.userAgent.toLowerCase();
var is_ie5 = ((parseInt(navigator.appVersion) == 4) && (agt.indexOf("msie 5.0")!=-1) && (agt.indexOf("opera") == -1));

if (document.getElementById && !is_ie5) {
obj=document.getElementById(name).style.visibility = "hidden";
document.getElementById(name).style.display = "none";
} else if (document.layers) {
obj=document.layers[name].visibility = "hide";
document.layers[name].display = "none";
} else if (document.all) {
obj=document.all[name].style.visibility = "hidden";
document.all[name].display = "none";
} else {
obj=false;
}
}

function getScrolling() {
var x = 0; var y = 0;
if( typeof( window.pageYOffset ) == 'number' ) {
//Netscape compliant
y = window.pageYOffset;
x = window.pageXOffset;
} else if( document.body && ( document.body.scrollLeft ||
document.body.scrollTop ) ) {
//DOM compliant
y = document.body.scrollTop;
x = document.body.scrollLeft;
} else if( document.documentElement &&
( document.documentElement.scrollLeft ||
document.documentElement.scrollTop ) ) {
//IE6 standards compliant mode
y = document.documentElement.scrollTop;
x = document.documentElement.scrollLeft;
}
//alert(x+","+y);
showMyDiv('showDescr', y);
return x+","+y;
}

function showMyDiv(name, y) {
showDiv(name);
document.getElementById(name).style.top = (y+100) +"px";
}

//usuwanie rekordow
var listItems;
var reg_color = '#FFFFFF';
var alt_color = '#F1F1F1';

function deleteSomething( what, id, message) {
what.replace('-', ' ');
if (!message) message = 'Are you sure you want to delete this ' + what + '?';
if ( confirm(message) ) {
return removeThisItem( what + '-' + id);
} else {
return false;
}
}


function removeThisItem(id) {
//var response = ajaxDel.response;
var response = 1;
if ( isNaN(response) ) { alert(response); }
response = parseInt(response, 10);
if ( -1 == response ) { ajaxDel.myResponseElement.innerHTML = "You don't have permission to do that."; }
else if ( 0 == response ) { ajaxDel.myResponseElement.interHTML = "Something odd happened.  Try refreshing the page? Either that or what you tried to delete never existed in the first place."; }
else if ( 1 == response ) {
theItem = document.getElementById(id);
Fat.fade_element(id,null,700,'#FF3333');
setTimeout('theItem.parentNode.removeChild(theItem)', 705);
var pos = getListPos(id);
listItems.splice(pos,1);
recolorList(pos);
//ajaxDel.myResponseElement.parentNode.removeChild(ajaxDel.myResponseElement);

}
}

function getListPos(id) {
for (var i = 0; i < listItems.length; i++) {
if (id == listItems[i]) {
var pos = i;
break;
}
}
return pos;
}

function getListItems() {
if (list) return;
listItems = new Array();
var extra = false;
var list = document.getElementById('the-list');
if (!list) { var list = document.getElementById('the-list-x'); extra = true; }
if (list) {
var items = list.getElementsByTagName('tr');
if (!items[0]) { items = list.getElementsByTagName('li'); }
for (var i=0; i<items.length; i++) { listItems.push(items[i].id); }
if (extra) { listItems.splice(0,1); }
}
}

function recolorList(pos,dur,from) {
if (!pos) pos = 0;

if (!from) {
reg_from = alt_color;
alt_from = reg_color;
} else {
reg_from = from;
alt_from = from;
}
for (var i = pos; i < listItems.length; i++) {
if (i % 2 == 1) Fat.fade_element(listItems[i],null,dur,reg_from,reg_color);
else Fat.fade_element(listItems[i],null,dur,alt_from,alt_color);
}
}

************************************************** */
