function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function checkform(name) {
    var err = false;
    var FormName = document.forms[name];
    switch(name) {
        case 'form_contact':
            var Field = new Array(
                'feed_back_name',
                'feed_back_phone',
                'feed_back_email',
                'feed_back_message',
                'feed_back_code'
            );
            break;
        case 'form_register':
            var Field = new Array(
                'first_name',
                'last_name',
                'login',
                'email',
                'password',
                'password2',
                'code'
            );
            break;
        case 'form_step1':
            var Field = new Array(
                'fio',
                'phone',
                'zip',
                'city',
                'address'
            );
            break;
        case 'form_auth':
        case 'form_login':
            var Field = new Array(
                'alogin',
                'apass'
            );
            break;
        case 'form_search1':
        case 'form_search':
            var Field = new Array(
                'search'
            );
            break;
        case 'form_refer':
            var Field = new Array(
                'fio',
                'email',
                'text'
            );
            break;
        case 'form_fogot':
        case 'form_subscribe':
            var Field = new Array(
                'email'
            );
            break;
        case 'form_subscribe_tovar':
            var Field = new Array(
                'temail'
            );
            break;
        default:
            var Field = new Array();
    }
    
    var i;
    for (i = 0; i < Field.length; i++)
    {
        if(FormName.elements[Field[i]].value == '')
        {
            FormName.elements[Field[i]].focus();
            if($(Field[i]+'_alert')) {
                if(Field[i]!='search') 
                    $(Field[i]+'_alert').style.color = 'red';
                else
                    $(Field[i]+'_alert').innerHTML = 'Пустой запрос!';
            }
            err = true;
        }else if( (Field[i]=='feed_back_email' || Field[i]=='email' || Field[i]=='temail') && (!/\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/.test(FormName.elements[Field[i]].value) || FormName.elements[Field[i]].value=='e-mail') ) {
            FormName.elements[Field[i]].focus();
            if($(Field[i]+'_alert')) {
                $(Field[i]+'_alert').style.color = 'red';
                if($(Field[i]+'_alert').innerHTML=='') $(Field[i]+'_alert').innerHTML = 'Неправильный E-mail';
            }
            err = true;
        }else if(Field[i]=='password' && (FormName.elements[Field[i]].value.length<6 || FormName.elements[Field[i]].value != FormName.elements['password2'].value) ) {
            FormName.elements[Field[i]].focus();
            if($(Field[i]+'_alert'))
                $(Field[i]+'_alert').style.color = 'red';
            if($(Field[i]+'2_alert'))
                $(Field[i]+'2_alert').style.color = 'red';
            err = true;
        }else {
            if($(Field[i]+'_alert'))
                $(Field[i]+'_alert').style.color = 'black';
            FormName.elements[Field[i]].value = FormName.elements[Field[i]].value.replace(/[<>&]+/g,'');
        }
    }
    
    if(err) {
        return false;
    } else
    {
        FormName.submit();
    }
}

function putItem(fromID, toID)
{
    var itemID = parseInt($(fromID).options[$(fromID).selectedIndex].value.split('|')[0]);
    var iid, pid, iexist, pexist, tmp;
    if(itemID>0) {
        var elem_f = $(fromID);
        var elem = $(toID);
        for(var i=0; i<elem_f.options.length; i++) {
            iexist = false;
            pexist = false;
            tmp = elem_f.options[i].value.split('|');
            iid = tmp[0];
            pid = tmp[1];
            if(elem_f.options[i].selected || pid==itemID) {
                var itemName = elem_f.options[i].innerHTML;
                for (var ii=0; ii < elem.options.length; ii++)
                {
                    if(elem.options[ii].value==iid) {
                        iexist = true;
                    }
                }
                if(!iexist) {
                    var option = document.createElement('option');
                    option.value = iid;
                    option.innerHTML = itemName;
                    elem.appendChild(option);
                }
            }
        }
    }
}

function select_all(id)
{
    var elem = $(id);
    for(var i=0; i<elem.options.length; i++) {
        elem.options[i].selected = true;
    }
}

function deleteItem(elem, id)
{
    for (var i=0; i < elem.options.length; i++)
    {
        if (elem.options[i].selected) {
            //alert(elem.options[i].value);
            $(id).removeChild(elem.options[i]);
        }
    }
    
    //alert(ItemID);
}

function clearform(form)
{
    var Elem;
    var first = true;
    for(var i=0;i<form.elements.length;i++) {
        Elem = form.elements[i];
        switch(Elem.tagName) {
            default:
                continue;
            case 'INPUT':
                if(Elem.type=='text') {
                    Elem.value = '';
                }else if(Elem.type=='radio' && !first) {
                    Elem.checked = false;
                }else if(Elem.type=='radio' && first) {
                    Elem.checked = true;
                    first = false;
                }
                break;
            case 'TEXTAREA':
                Elem.innerHTML = '';
                break;
            case 'SELECT':
                var opt = Elem.options;
                for(var ii=0;ii<opt.length;ii++) {
                    opt[ii].selected = false;
                }
                break;
        }
    }
}


/**
 *  for basket
 *
 */

function calculate_cart() 
{
    var Sum = 0;
    var Count = 0;
    var Sum_i = 0;
    var adds = new Array();
    var adds_cnt = new Array();
    for(var i=0;i<items.length;i++) {
        if($('count_'+items[i]) && $('price_'+items[i]) && $('sum_'+items[i]) ) {
            Count = parseInt($('count_'+items[i]).value);
            if(Count<=0) Count = 1;
            $('count_'+items[i]).value = Count;
            Sum_i = Count * parseInt($('price_'+items[i]).innerHTML.replace(/\s/g, '') );
            Sum = parseInt(Sum) + parseInt(Sum_i);
            //alert('['+parseInt($('sum_'+items[i]).innerHTML)+'!='+parseInt(Sum_i)+']');
            if( parseInt($('sum_'+items[i]).innerHTML) != parseInt(Sum_i) ) {
		Sum_i = Sum_i.toString().split('').reverse().join('').replace(/(\d{3})/, "$1 ").split('').reverse().join('');
                $('sum_'+items[i]).innerHTML = Sum_i;
                adds = adds.concat(items[i]);
                adds_cnt = adds_cnt.concat(Count);
                //add_good_in_cart(items[i], Count);
            }
        }
    }
    if(adds.length>0) {
        add_good_in_cart(adds, adds_cnt);
    }
    if($('sum')) {
	Sum = Sum.toString().split('').reverse().join('').replace(/(\d{3})/, "$1 ").split('').reverse().join('');
        $('sum').innerHTML = Sum;
    }
}

function delete_in_cart()
{
    var dels = new Array();
    var exists = 0;
    for(var i=0;i<items.length;i++) {
        if($('item_'+items[i])) {
            if($('item_'+items[i]).checked) {
                //alert("delete: "+items[i]);
                //delete_good_from_cart(items[i]);
                dels = dels.concat(items[i]);
                $('item_'+items[i]).parentNode.parentNode.remove();
                //alert($('item_'+items[i]).parentNode);
            }else
                exists = 1;
        }
    }
    if(dels.length>0) {
        delete_good_from_cart( dels );
        if(exists==0)
            if(document.getElementById("basket_body")) 
                document.getElementById("basket_body").innerHTML = 'Ваша корзина заказов пуста';
    }
    calculate_cart();
}
