 function init () { return initUn(); }
        function initUn () {

                var html = "";
                html += "<table border=0 width='100%' id='shoppingcart' class='content' cellpadding='3' cellspacing='1' style='margin-bottom:10px'>";
                html += "<tbody><tr bgcolor='#eeeedd'><td colspan='2'><b>Список продуктов</b></td><td nowrap class='hide'><b>Число подписок</b></td><td nowrap class='hide'><b>Срок подписки</b></th><td nowrap align='center' nowrap><b>Цена (руб.)</b></td></tr>";
                if (str) {
                        var lst = str.split(",");
                        for (i=0; i<lst.length; i++) {
                                var tmp_id = lst[i].substr(5);
                                if (tmp_id!="") {
                                        var product = document.getElementById(tmp_id);
                                        var deptLink = product;
                                        while (deptLink.style.display=='none') deptLink = deptLink.previousSibling;
                                        deptLink = deptLink.id;
                                        price = get_price(product);
                                        var valTerm = 3*Math.pow(2,parseInt(terms));
                                        valTerm += ' мес.';
                                        html += "<tr id='"+lst[i]+"'";
                                        if (i%2) html+=' style="background:#eee"';
                                        html += "><td><input class='checkbox' type='checkbox' checked value='"+valTerm+"' name='"+product.firstChild.innerHTML+"'><input type='hidden' value='"+tmp_id+"'></td>";
                                        html += "<td width='100%'><a href='/price/?"+deptLink+"'>"+product.firstChild.innerHTML+"</a></td>";
                                        html += "<td nowrap align='right'>"+price+"</td></tr>\n"
                                        sum += parseInt(price);
                                }
                        }
                        var vat = 0.18*sum; // var vat = parseInt(0.18*sum);
                        html += "<tr bgcolor='#eeeedd'><td colspan='2' align='right'><b>Сумма:</td></td><td align='right' id='summa'><b>"+sum+"</b></td></tr>";
                        html += "<tr><td colspan='2' align='right'>НДС:</td><td align='right' id='vat'>"+vat+" </td></tr>";
                        html += "<tr><td colspan='2' align='right' class='red' id='total_text'><b>Итого</b> (c НДС) за <select style='width:65px'  name='terms' id='terms' onchange='count(this)'>";
                        for (i=0;i<3;i++) {
                                var month = 3*Math.pow(2,i)
                                html += "<option value='"+month+"'"+(i==terms ? ' selected' : '')+">"+month+" мес.";
                        }
                        html += "</select></td><td id='total' align='right'><b class='red'>"+(vat+sum)+"</b></td></tr>";
                }
                html += "</tbody></table>";
                html += "<div class='small' align='right' id='total_comment'>"+( sum==0 ? 'Нет выбранных продуктов' : 'Цены указаны в рублях')+"</div><br>";
                html += "<div class='buttons' align='right'><input class='button' type='button' value='Пересчитать' onclick='check_shoppingcart()'></div>"
                return (html);
        }

        function check_shoppingcart () {
                var coll = cont.getElementsByTagName("INPUT");
                str = "";
                var j=0;
                for (i=0; i<coll.length; i++) {
                        if (coll[i].type == "checkbox") {
                                if (coll[i].checked) {
                                        // заново формируем куку
                                        str += "cart_"+coll[i].nextSibling.value+",";
                                        j++;
                                        if (j%2) coll[i].parentNode.parentNode.style.background="#fff";
                                        if (!(j%2)) coll[i].parentNode.parentNode.style.background="#eee";
                                }
                                else {
                                        // удаляем продукт из списка
                                        oldChild = coll[i].parentNode.parentNode;
                                        oldChild.parentNode.removeChild(oldChild);
                                        i--;
                                }
                        }
                }
                summary ();
                set_cookie ("IDS", str);
        }

        function recheck_shoppingcart(what) {
                var coll = what.getElementsByTagName("INPUT");
                var tmp = new Array();
                j = 0;
                for (i=0; i<coll.length; i++) {
                        if (coll[i].type == "checkbox") {
                                var tmp_id = "cart_"+coll[i].value;
                                if (!coll[i].checked) {
                                        if (document.getElementById(tmp_id)) {
                                                var item = document.getElementById(tmp_id);
                                                var trash = cart.deleteRow(item.rowIndex);
                                                tmp[j] = tmp_id;
                                                j++;
                                        }
                                }
                        }
                }
                if (tmp.length>0) {
                        var lst = str.split(",");
                        str = "";
                        for (i=0; i<lst.length; i++) {
                                for (j=0; j<tmp.length; j++) {
                                        if ( (tmp[j] != lst[i]) && (lst[i]!="") ) {
                                                str += lst[i]+",";
                                        }
                                }
                        }
                        set_cookie ("IDS", str);
                }
                summary ();
        }


        function add_to_shoppingcart (id) {
                var products = new Array ();
                var j=0; mm = ""; tt = "";
                if (isNaN(id)) { // т.е. массив
                        for (i=0;i<id.elements.length;i++) {
                                if (id.elements[i].checked) {
                                        products[j] = id.elements[i].value;
                                        j++;
                                }
                        }
                }
                else { // одно число
                        products[0] = id;
                }
                if (!products.length) {
                        alert ("Ничего не выбрано!");
                        return;
                }

                if (str) { // в корзине что-то есть
                        var lst = str.split(",");
                        for (j=0; j<products.length;j++) {
                                var flag = false; var m;
                                var tmp_id = "cart_"+products[j];
                                for (i=0; i<lst.length; i++) {
                                        if (tmp_id == lst[i]) {
                                                flag = true;
                                                m = j;
                                                break;
                                        }
                                }
                                if (flag) {
                                        tt += '"'+document.getElementById(products[j]).firstChild.innerHTML+'", ';
                                }
                                else {
                                        // нужно добавить в корзину новый продукт
                                        var n = copyItem(products[j])
                                        addItem(n,products[j]);
                                        set_checkbox (frm,products[j]);
                                        var tmp = document.createElement("TD")
                                        var c2 = n.appendChild(tmp);
                                        var product = document.getElementById(products[j]);
                                        c2.innerHTML = get_price(product) //+" руб.";
                                }
                        }
                        summary();
                        //if (tt!= "") {
                        //        alert ('Продукт(ы): '+tt.substr(0,tt.length-2)+' уже находятся в корзине');
                        //}
                        if (mm != "") {
                                alert ('Продукт(ы): '+mm.substr(0,mm.length-2)+' добавлен(ы) в корзину');
                        }
                }
                else { // корзина пуста
                        for (j=0; j<products.length;j++) {
                                var n = copyItem(products[j])
                                addItem(n,products[j]);
                                set_checkbox (frm,products[j]);
                                var product = document.getElementById(products[j]);
                                var tmp = document.createElement("TD")
                                var c2 = n.appendChild(tmp);
                                c2.innerHTML = get_price(product) //+" руб.";
                        }
                        summary();
                        alert ('Продукт(ы): '+mm.substr(0,mm.length-2)+' добавлен(ы) в корзину');
                }
        }

        function fill_shoppingcart () {
                if (str && cart) {
                        var lst = str.split(",");
                        for (i=0; i<lst.length; i++) {
                                var tmp_id = lst[i].substr(5);
                                if (tmp_id!="") {
                                        var n = copyItem(tmp_id)
                                        n.id = lst[i];
                                        var product = document.getElementById(tmp_id)
                                        var tmp = document.createElement("TD")
                                        c1 = n.appendChild(tmp);
                                        c1.innerHTML = get_price(product) //+" руб.";
                                        c1.style.textAlign = "right";
                                }
                        }
                        summary();
                }
                else if (document.getElementById("total_comment")) {
                                document.getElementById("total_comment").innerHTML = "Нет выбранных продуктов";
                }
        }



        function copyItem(id) {
                var item = document.getElementById(id);
                        var deptLink = item;
                        while (deptLink.style.display=='none') {
                                deptLink = deptLink.previousSibling;
                        }
                        deptLink = deptLink.id;
                if (item && cart) {
                        var tmp = document.createElement("TR")
                        var rw = cart.firstChild.appendChild(tmp);
                        //alert (rw.outerHTML)
                        //rw.style.verticalAlign = 'top';
                        var tmp1 = document.createElement("TD")
                        var c0 = rw.appendChild(tmp1);
                        c0.innerHTML = "<img src='/images/price/icon_del.gif' onclick='del_from_shoppingcart(this)' style='cursor:hand' vspace='3' alt='Удалить продукт из корзины' width='12'>";
                        c0.style.width="12px";
                        var tmp2 = document.createElement("TD")
                        var c1 = rw.appendChild(tmp2);
                        c1.innerHTML = "<a href='/price/?"+deptLink+"'>"+item.firstChild.innerHTML+"</a>";
                        return(rw);
                }
                else {
                        return false;
                }
        }

        function addItem (n,id) {
                n.id = "cart_"+id;
                str += n.id+",";
                set_cookie ("IDS", str);
                mm += '"'+document.getElementById(id).firstChild.innerHTML+'", ';
        }

        function count (selector) {
                var coll = document.getElementById('shoppingcart').tBodies[0].rows;
                for (i=0;i<coll.length;i++) {
                        var tmp_id = coll[i].id.substr(5);
                        if (tmp_id!="") {
                                var product = document.getElementById(tmp_id);

                                coll[i].lastChild.innerHTML = get_price (product, selector.selectedIndex);
                                coll[i].firstChild.firstChild.value = selector.options[selector.selectedIndex].text;
                        }
                }

                set_cookie ("TERMS", selector.selectedIndex);
                summary();
        }

        function summary() {
                sum = 0;
                var cart = document.getElementById('shoppingcart');
                var coll = cart.tBodies[0].rows;

                if (cart.className == 'content')
                        for (i=1; i<coll.length-3; i++) {
                                sum = (!isNaN(parseInt(coll[i].lastChild.innerHTML))) ? parseInt(coll[i].lastChild.innerHTML)+sum : sum;
                        }
                else
                        for (i=0; i<coll.length; i++) {
                                sum = (!isNaN(parseInt(coll[i].lastChild.innerHTML))) ? parseInt(coll[i].lastChild.innerHTML)+sum : sum;
                        }

                //alert(sum);

                var terms = get_cookie("TERMS");
                if (document.getElementById("summa")) {
                        document.getElementById("summa").innerHTML = "<b>"+sum+"</b>"; //+" руб.</b>";
                }

                if (document.getElementById("vat")) {
                        document.getElementById("vat").innerHTML = parseInt(0.18*sum);//+" руб.";
                }

                if (document.getElementById("total")) {
                        var html = "";
                        html += "<select style='width:65px' name='terms' id='terms' onchange='count(this)'>";
                        for (i=0;i<3;i++) {
                                month = 3*Math.pow(2,i)
                                html += "<option value='"+month+"'"+(i==terms ? ' selected' : '')+">"+month+" мес. ";
                        }
                        html += "</select>";
                        document.getElementById("total_text").style.whiteSpace='nowrap';
                        document.getElementById("total_text").colSpan = '2';
                        document.getElementById("total_text").innerHTML = "<b class='red'>Итого</b> (c НДС) за "+html;
                        document.getElementById("total").innerHTML = "<b class='red'>"+parseInt(1.18*sum)+"</b>";
                        document.getElementById("total_comment").innerHTML = "Цены указаны в рублях";
                        if (cart) {
                                cart.lastChild.style.display = "block";
                        }
                }

                if (sum==0 && cart) {
                        cart.lastChild.style.display = "none";
                        document.getElementById("total_comment").innerHTML = "Нет выбранных продуктов!"
                }
        }

        function set_checkbox (frm, val) {
                if (frm) {
                        for (k=0;k<frm.elements.length;k++) {
                                if (frm.elements[k].type=="checkbox") {
                                        if (frm.elements[k].value ==  val) {
                                                frm.elements[k].checked = true;
                                        }
                                }
                        }
                }
        }

        function del_from_shoppingcart (what) {
                //alert (cart.innerHTML); return;
                var target = what.parentNode.parentNode;
                var tmp = confirm ("Действительно удалить продукт из корзины?");
                if (tmp) {
                        var lst =  str.split(",");
                        str = "";
                        for (i=0;i<lst.length;i++) {
                                if (lst[i]!="") { // заново формируем куки
                                        if (lst[i] != target.id) {
                                                str += lst[i]+",";
                                        }
                                        else  { // удаляем пролукт из корзины
                                                var item = document.getElementById(lst[i]);
                                                if (window.opera) {
                                                        item.style.display='none';
                                                        var trash = cart.deleteRow(item.rowIndex+1);
                                                }
                                                else var trash = cart.deleteRow(item.rowIndex);
                                        }
                                }
                        }
                        cart.style.display = 'none';
                        cart.style.display = 'block';
                        set_cookie ("IDS", str);
                        summary();
                        fill_table (frm);
                }
        }

        function  fill_table(frm) {
                frm.reset();
                if (str!="" && frm) {
                        var lst = str.split(",");
                        for (j=0;j<frm.elements.length;j++) {
                                for (i=0;i<lst.length;i++) {
                                        var tmp_id = lst[i].substr(5);
                                        if (frm.elements[j].type == "checkbox") {
                                                if (tmp_id == frm.elements[j].value) {
                                                        frm.elements[j].checked = true;
                                                }
                                        }
                                }
                        }
                }
        }

        function get_price(product, period) {
                var p = (period || period==0) ? period : parseInt(terms);
                var sel = product.childNodes[1];
                var k = parseInt(sel.options[p].text);
                var val = k*sel.options[p].value;
                return (val);

        }

//delete_cookie ("IDS");
//delete_cookie ("TERM");

