Precart = function() {
    setOpacity($('precart-save'), 0.5);
};

Precart.prototype = {

    items:   {},
    removed: {},
    num: 0,
    sum: 0,

    add: function(itemID, itemPrice) {

        if (!this.items[itemID]) { // add
            this.items[itemID] = { num: (this.removed[itemID] || 1), price: itemPrice };
        } else {                   // remove
            this.removed[itemID] = this.items[itemID].num;
            this.items[itemID]   = null;
        }

        this.recountStats();
    },

    setNum: function(itemID, input) {

        var n = parseInt(input.value);
        if (!input.value)
            n = 1;
        else
        if (isNaN(n))
            n = input.value = 1;

        if (this.items[itemID])
            this.items[itemID].num = n;
        else
            this.removed[itemID] = n;

        this.recountStats();
    },

    recountStats: function() {

        this.num = 0;
        this.sum = 0;
        for (itemID in this.items)
			
            if (this.items[itemID] != null) {
                this.num += this.items[itemID].num;
                this.sum += this.items[itemID].num * this.items[itemID].price;

                $('items[' + itemID + '][sum]').innerHTML = this.items[itemID].num * this.items[itemID].price;
            }

        if (this.num && this.sum) {
            $('-precart-stats-num').innerHTML = this.num;
            $('-precart-stats-sum').innerHTML = this.sum;
            $('precart-stats').className += ' active';
            setOpacity($('precart-save'), 1);			
        } else {
            (pSO = $('precart-stats')).className = pSO.className.replace(/active/g, '');
            setOpacity($('precart-save'), 0.5);
        }
    },

    clear: function() {

        this.items = {};
        this.removed = {};

        this.recountStats();
    },

    save: function(URI) {

        var data = '';
        for (itemID in this.items)
            if (this.items[itemID] != null)
                data += '&items[' + itemID + ']=' + this.items[itemID].num;

        var num = this.num;
        var sum = this.sum;
        var materials=document.getElementsByName('material');
        var mat=0;  
        for(i=0;i<materials.length;i++){          
           if(materials[i].checked) mat=materials[i].value;
        }         
	var bedroom=0;
	if($('bedroom_id')!=null){
	   bedroom=$('bedroom_id').innerHTML;  
	   data += '&mat='+mat+'&id='+bedroom;          	
	}
	if (data)			 
		{
            query(			   
                URI + ((URI.indexOf('?') == -1) ? '?' + data.substr(1) : data),
                function() {
                    //fade($('precart-stats'), 1, 0, 20, 20, function() { $('precart-stats').style.display = 'none'; });

                    var inputs = document.getElementsByTagName('INPUT');
                    for (var i = 0; i < inputs.length; i++) {
                        if (inputs[i].className == 'item-add') {
                            inputs[i].checked = false;
                        } else
                        if (inputs[i].className == 'item-set-num') {
                            inputs[i].value = 1;
                            inputs[i].onkeyup();
                        }
                    }

                    precart.clear();

					var cartnum = parseInt($('-cart-num').innerHTML);
                    $('-cart-num').innerHTML = isNaN(cartnum) ? num : cartnum + num;

                    var cartsum = parseInt($('-cart-sum').innerHTML);
                    $('-cart-sum').innerHTML = isNaN(cartsum) ? sum : cartsum + sum;

                    if($('cart').className!='active')
						$('cart').className += 'active';
                });
			alert('Товар добавлен в корзину');
			$('cart_button').className = "cart_act";
			$('cart_button').parentNode.href = "/busket/";
		}
    }
}

function modelLoadImages(imgs) {
	
    var gal = $('gallery');
    var img = gal.getElementsByTagName('IMG')[0];
    var pnl = gal.getElementsByTagName('DT')[0];

    img._all = imgs;
    //img._all.unshift(img.src);
    img.curr = 0;

    var button;

	
	button = pnl.appendChild(document.createElement('BUTTON'));
    button.className = 'prev';
    button.onclick = function() {
        if (!img.curr)
            return;

        pnl.getElementsByTagName('BUTTON')[img.curr + 1].className = '';
        pnl.getElementsByTagName('BUTTON')[img.curr].className = 'selected';
        img.curr -= 1;
        img.src  = img._all[img.curr];
    }

    for (var i = 0; i < imgs.length; i++) {
         button = pnl.appendChild(document.createElement('BUTTON'));
         button.i = i;
         button.onclick = function() {
            img.src  = img._all[this.i];
            pnl.getElementsByTagName('BUTTON')[img.curr + 1].className = '';
            img.curr = this.i;
            this.className = 'selected';
         }

         if (!i)
             button.className = 'selected';
    }

    button = pnl.appendChild(document.createElement('BUTTON'));
    button.className = 'next';
    button.onclick = function() {
        if (img.curr == img._all.length - 1)
            return;

        pnl.getElementsByTagName('BUTTON')[img.curr + 1].className = '';
        img.curr += 1;
        pnl.getElementsByTagName('BUTTON')[img.curr + 1].className = 'selected';
        img.src  = img._all[img.curr];
    }
}