function in_array(value, array){
    for(var i=0;i<array.length;i++){
        if(array[i] == value) return true;
    }
    return false;
}


var mail_zone_1 = Array("2101", "2112", "2010", "2166", "2108", "2016", "2015",
                        "2167", "2008", "2107", "2003", "2011", "2128", "2102");


var mail_zone_2 = Array("5101", "5103", "4301", "4501", "3901", "4101", "5401", "5403", "5404", "5410", "5412", "5413", "5414", "5415", "5417", "5418", "5419", "5420", "5421", "3701", "4401", "3430", "5201", "5202", "5203", "5204", "3001", "3002", "3003", "3004", "3007", "3008", "5601", "3301", "3401", "3402", "3405", "3406", "3407", "3411", "3416", "4001", "5701", "4801", "5001", "5301", "4601", "4603", "4604", "3201", "3101", "4701", "4201", "3601", "3602", "3604");


var mail_zone_3 = Array("5135", "5105", "5107", "5111", "5133", "5110", "5108", "5134", "5113", "5114", "5115", "5118", "5119", "5120", "5121", "5122", "5124", "5123", "5125", "5126", "5127", "5128", "5129", "5130", "5132", "5106", "5109", "5112", "4333", "4341", "4337", "4357", "4331", "4336", "4339", "4344", "4340", "4350", "4342", "4354", "4347", "4359", "4358", "4332", "4351", "4352", "4346", "4348", "4335", "4356", "4338", "4355", "4345", "4334", "4594", "4590", "4576", "4595", "4567", "4588", "4592", "4575", "4574", "4566", "4582", "4577", "4586", "4563", "4573", "4581", "4561", "4593", "4591", "4570", "4564", "4562", "4587", "4572", "4565", "4571", "4585", "4580", "4583", "4584", "3905", "3927", "3906", "3907", "3916", "3908", "3910", "3911", "3912", "3913", "3914", "3915", "3917", "3918", "3919", "3920", "3909", "3921", "3922", "3923", "3924", "3925", "3926", "3928", "3929", "3930", "3931", "3932", "3933", "3934", "3935", "3936", "4135", "4117", "4130", "4140", "4132", "4118", "4134", "4141", "4139", "4123", "4154", "4125", "4127", "4144", "4138", "4121", "4148", "4153", "4128", "4110", "4108", "4142", "4129", "4112", "4133", "4126", "4137", "4131", "4136", "4150", "4145", "4143", "4151", "4124", "4152", "4119", "4122", "4116", "4109", "4113", "5438", "5439", "5440", "5441", "5442", "5443", "5444", "5446", "5447", "5448", "5449", "5450", "5451", "5452", "5453", "5454", "5455", "5456", "5458", "5459", "5460", "5461", "5462", "5463", "5464", "5465", "5467", "5468", "5469", "5470", "5471", "5472", "5473", "5474", "5476", "5477", "5478", "5479", "5481", "3705", "3706", "3707", "3708", "3709", "3710", "3711", "3712", "3713", "3714", "3715", "3704", "3716", "3717", "3718", "3719", "3720", "3721", "3722", "3723", "3732", "3724", "3725", "3726", "3727", "3728", "3729", "3731", "3730", "4422", "4409", "4429", "4426", "4411", "4427", "4428", "4420", "4407", "4430", "4418", "4412", "4431", "4419", "4421", "4405", "4425", "4414", "4410", "4408", "4416", "4413", "4417", "4406", "4424", "4415", "4423", "4404", "5212", "5208", "5209", "5210", "5211", "5213", "5214", "5215", "5216", "5217", "5218", "5219", "5220", "5221", "5222", "5223", "5224", "5225", "5226", "5228", "5229", "5230", "5231", "5232", "5233", "5234", "5236", "5237", "5238", "5239", "3029", "3025", "3012", "3042", "3023", "3045", "3044", "3013", "3033", "3028", "3016", "3015", "3022", "3036", "3032", "3014", "3037", "3019", "3040", "3018", "3021", "3034", "3031", "3010", "3043", "3017", "3030", "3026", "3026", "3011", "3027", "5653", "5687", "5676", "5681", "5670", "5698", "5674", "5662", "5692", "5696", "5655", "5664", "5652", "5684", "5699", "5685", "5688", "5680", "5677", "5697", "5693", "5660", "5666", "5656", "5651", "5671", "5665", "5695", "5668", "5669", "3306", "3307", "3308", "3309", "3310", "3311", "3312", "3313", "3314", "3315", "3317", "3319", "3320", "3321", "3322", "3323", "3324", "3325", "3326", "3328", "3329", "3330", "3331", "3332", "3333", "3450", "3456", "3487", "3455", "3482", "3471", "3446", "3453", "3438", "3452", "3481", "3440", "3454", "3436", "3431", "3486", "3442", "3472", "3484", "3476", "3443", "3457", "3444", "3475", "3461", "3473", "3474", "3445", "3433", "3466", "3434", "3485", "3469", "3477", "3464", "3465", "3480", "3447", "3435", "3441", "3467", "3463", "3462", "4035", "4064", "4055", "4051", "4005", "4014", "4068", "4067", "4010", "4060", "4054", "4034", "4020", "4011", "4012", "4032", "4023", "4040", "4062", "4052", "4061", "4063", "4041", "4033", "4025", "4043", "4021", "4022", "4004", "4065", "4013", "4044", "4050", "4030", "5704", "5705", "5706", "5707", "5708", "5709", "5711", "5712", "5713", "5714", "5716", "5717", "5719", "5722", "5753", "5726", "5725", "5728", "5729", "5730", "5746", "5732", "5733", "5735", "5742", "5736", "5737", "5739", "5740", "5745", "5748", "5749", "5750", "5751", "5752", "4821", "4823", "4824", "4825", "4826", "4827", "4828", "4830", "4831", "4833", "4834", "4835", "4836", "4837", "4838", "4840", "4841", "4844", "4846", "4847", "4850", "4852", "4853", "4855", "4856", "4860", "4861", "4862", "4863", "4865", "4870", "4871", "4872", "4873", "4874", "4880", "4881", "4884", "4885", "4886", "5033", "5031", "5010", "5052", "5022", "5051", "5012", "5020", "5062", "5044", "5011", "5065", "5070", "5071", "5045", "5047", "5041", "5016", "5023", "5060", "5064", "5015", "5030", "5050", "5304", "5305", "5307", "5308", "5309", "5310", "5311", "5312", "5313", "5315", "5316", "5317", "5320", "5321", "5323", "5325", "5326", "5327", "5328", "5329", "5330", "5331", "5332", "5333", "5334", "5318", "5335", "5336", "5337", "4628", "4611", "4612", "4614", "4615", "4616", "4617", "4618", "4619", "4621", "4622", "4623", "4624", "4625", "4626", "4627", "4629", "4630", "4631", "4652", "4633", "4634", "4635", "4637", "4648", "4636", "4638", "4640", "4641", "4642", "4643", "4645", "4644", "4646", "4649", "4647", "4650", "4651", "3801", "3852", "3851", "3864", "3862", "3881", "3891", "3872", "3898", "3893", "3876", "3890", "3861", "3899", "3877", "3882", "3871", "3894", "3896", "3873", "3880", "3883", "3884", "3875", "3895", "3892", "3897", "3853", "3295", "3287", "3258", "3270", "3297", "3279", "3265", "3278", "3275", "3283", "3280", "3285", "3290", "3262", "3273", "3276", "3284", "3267", "3251", "3268", "3264", "3263", "3294", "3298", "3257", "3291", "3261", "3266", "3260", "3253", "3281", "3296", "3277", "3292", "3116", "3112", "3122", "3115", "3140", "3125", "3147", "3113", "3136", "3137", "3145", "3128", "3144", "3120", "3121", "3117", "3127", "3114", "3118", "3146", "3132", "3148", "3133", "3124", "3138", "3110", "3119", "3129", "3143", "3139", "3131", "3130", "3141", "3126", "3142", "3134", "3135", "3123", "4705", "4706", "4707", "4708", "4709", "4711", "4712", "4713", "4715", "4714", "4716", "4717", "4718", "4719", "4720", "4721", "4722", "4724", "4726", "4727", "4729", "4723", "4729", "4730", "4731", "4732", "4733", "4735", "4208", "4245", "4230", "4206", "4212", "4225", "4223", "4242", "4234", "4209", "4220", "4247", "4232", "4248", "4210", "4215", "4224", "4244", "4216", "4205", "4232", "4227", "4240", "4213", "4228", "4200", "4219", "4211", "4243", "4241", "4218", "4222", "3611", "3612", "3626", "3616", "3620", "3614", "3613", "3621", "3615", "3619", "3627", "3622", "3618", "3624", "3617", "3623");

var mail_zone_4 = Array("1050", "1008", "1047", "1504", "1051", "1077", "1167", "1478", "1898", "1227","1142","1166","1187","1163","1954","1955","1925","1850","1772","1803","1522","1805","1162","1544","1235","1423","1815","1974","1820","1659","1184","1874","1871","1729","1452","1165","1897","1254","1332","1159","1801","1940","1878","1518","1506","1459","1892","1888","1357","1173","1085","1309","1145","1872","1889","1230","1160","1183","1442","1819","1325","1192","1547","1206","1807","1909","1000","1306","1893","1586","1443","1716","1487","1502","1468","1451","1484","1896","1473","1525","1519","1919","1841","1978","1884","1533","1421","1364","1331","1131","1743","1190","1536","1494","1981","1520","1360","1708","1427","1939","1143","1340","1479","1508","1461","1703","1185","1887","1548","1707","1505","1527","1426","1755","1178","1170","1539","1885","1758","1617","1811","1483","1602","1301","1802","1222","1194","1475","1817","1658","1561","1172","1573","1509","1501","1511","1372","1355","1886","1958","1356","1371","1752","1849","1726","1563","1145","1495","1457","1980","1900","1176","1510","1863","1552","1609","1605","1193","1554","1570","1666","1530","1524","1535");



function calcZone(code){
//Nosaka Eksprespasta tarifu zonu
    var code = document.getElementById("delivery_code_value").value;
    if (code.length != 4) return 0;

    if(code.substring(0, 1) == "1") return 1;

    if(in_array(code, mail_zone_1)) return 1;

    if(in_array(code, mail_zone_2)) return 2;

    if(in_array(code, mail_zone_3)) return 3;

    if(in_array(code, mail_zone_4)) return 4;

    return 3;
};

function calcZone2(code){
//Nosaka Eksprespasta tarifu zonu
    var code = document.getElementById("delivery_code_value").value;
    if (code.length != 4) return 0;

    if(in_array(code, mail_zone_4)) return 4;

    return 5;
};

//-----

function updateDeliveryPrice(){
    var delivery_type = document.getElementById("delivery").value;
    var size_id = document.getElementById("size").value;

    if(deliveryPrices[size_id]){
        if (delivery_type == "mail_letter"){
            document.getElementById("delivery_price_row").className="";
            document.getElementById("delivery_price_zone").className="hidden";
            document.getElementById("delivery_price_zone2").className="hidden";
            document.getElementById("delivery_price_error").className="hidden";
            document.getElementById("delivery_price").className="";

            var delivery_price = deliveryPrices[size_id][0];
            document.getElementById("delivery_price_value").innerHTML=delivery_price;
        }
        else if(delivery_type == "mail_office"){
            document.getElementById("delivery_price_row").className="";
            document.getElementById("delivery_price_zone").className="hidden";
            document.getElementById("delivery_price_zone2").className="hidden";
            document.getElementById("delivery_price_error").className="hidden";
            document.getElementById("delivery_price").className="";

            var delivery_price = deliveryPrices[size_id][1];
            document.getElementById("delivery_price_value").innerHTML=delivery_price;
        }
        else if(delivery_type == "30"){
            var zone = calcZone2();
            if (zone){
                document.getElementById("delivery_price_row").className="";
                document.getElementById("delivery_price_zone").className="";
                document.getElementById("delivery_price_zone2").className="hidden";
                document.getElementById("delivery_price_error").className="hidden";
                document.getElementById("delivery_price").className="hidden";

                var delivery_price = deliveryPrices[size_id][1+zone];

                document.getElementById("delivery_price_zone_value").innerHTML=delivery_price;
                //document.getElementById("delivery_price_zone_number").innerHTML=zone;

            }
            else {
                document.getElementById("delivery_price_row").className="";
                document.getElementById("delivery_price_zone").className="hidden";
                document.getElementById("delivery_price_zone2").className="hidden";
                document.getElementById("delivery_price_error").className="";
                document.getElementById("delivery_price").className="hidden";
            };
        }
        else if(delivery_type == "mail_courier"){
            var zone = calcZone();
            if (zone){
                document.getElementById("delivery_price_row").className="";
                document.getElementById("delivery_price_zone").className="";
                document.getElementById("delivery_price_zone2").className="hidden";
                document.getElementById("delivery_price_error").className="hidden";
                document.getElementById("delivery_price").className="hidden";

                var delivery_price = deliveryPrices[size_id][1+zone];

                document.getElementById("delivery_price_zone_value").innerHTML = delivery_price;
                //document.getElementById("delivery_price_zone_number").innerHTML=zone;

            }
            else {
                document.getElementById("delivery_price_row").className="";
                document.getElementById("delivery_price_zone").className="hidden";
                document.getElementById("delivery_price_zone2").className="hidden";
                document.getElementById("delivery_price_error").className="";
                document.getElementById("delivery_price").className="hidden";
            };
        }
        else if(delivery_type == "bandrole"){
            document.getElementById("delivery_price_row").className="";
            document.getElementById("delivery_price_zone").className="hidden";
            document.getElementById("delivery_price_zone2").className="hidden";
            document.getElementById("delivery_price_error").className="hidden";
            document.getElementById("delivery_price").className="";

            var delivery_price = deliveryPrices[size_id][7];
            document.getElementById("delivery_price_value").innerHTML=delivery_price;
        }

        else {
            document.getElementById("delivery_price_row").className="hidden";
        }
    }
    else {
        document.getElementById("delivery_price_row").className="hidden";
    }
}

//-----

function updateDelivery(){
    var delivery_el = document.getElementById("delivery");
    var delivery_mail_el = document.getElementById("delivery_mail");
    var size_el = document.getElementById("size");

    var delivery_value = delivery_el.value;

    while (delivery_mail_el.firstChild) {
        delivery_mail_el.removeChild(delivery_mail_el.firstChild);
    }

    if(deliveryPrices[size_el.value]){
        if (deliveryPrices[size_el.value][0]){
            var option = document.createElement("option");
            option.setAttribute("value", "mail_letter");
            option.innerHTML = deliveryTypes["mail_letter"];
            delivery_mail_el.appendChild(option);
        };
        /*if (deliveryPrices[size_el.value][1]){
            var option = document.createElement("option");
            option.setAttribute("value", "mail_office");
            option.innerHTML = deliveryTypes["mail_office"];
            delivery_mail_el.appendChild(option);
        };
        if (deliveryPrices[size_el.value][7]){
            var option = document.createElement("option");
            option.setAttribute("value", "bandrole");
            option.innerHTML = deliveryTypes["bandrole"];
            delivery_mail_el.appendChild(option);
        };
        if (deliveryPrices[size_el.value][2] || deliveryPrices[size_el.value][3] || deliveryPrices[size_el.value][4]){
            var option = document.createElement("option");
            option.setAttribute("value", "mail_courier");
            option.innerHTML = deliveryTypes["mail_courier"];
            delivery_mail_el.appendChild(option);
        };*/


        document.getElementById("delivery_price_unknown").className="hidden";
    }
    else {
        for(var delivery_type in deliveryTypes){
            var option = document.createElement("option");
            option.setAttribute("value", delivery_type);
            option.innerHTML = deliveryTypes[delivery_type];
            delivery_mail_el.appendChild(option);
        }

        if (delivery_value == "mail_letter" || delivery_el.value == "mail_office" || delivery_el.value=="mail_courier" || delivery_el.value=="bandrole"){
            document.getElementById("delivery_price_unknown").className="";
        }
        else {
            document.getElementById("delivery_price_unknown").className="hidden";
        }
    };

    delivery_el.value = delivery_value;

    var delivery_address_el = document.getElementById("delivery_address");
    var delivery_code_el = document.getElementById("delivery_code");
    var delivery_pecapmaksa_el = document.getElementById("bandrole");
    var delivery_trepe_el = document.getElementById("trepe_code");
    var delivery_rimi_el = document.getElementById("rimi");
    var delivery_skaits_el = document.getElementById("skaits");
    var delivery_pasut_el = document.getElementById("pasut");
    var delivery_rimi50_el = document.getElementById("rimi50");
    var delivery_rimi10_el = document.getElementById("rimi10");
    var delivery_rimi300_el = document.getElementById("rimi300");
    var delivery_kurjers_el = document.getElementById("kurjers_price");
    var payment_el = document.getElementById("payment");
    var payment_banklink_el = document.getElementById("payment_banklink");

    if (delivery_el.value == "mail_letter" || delivery_el.value == "mail_office" || delivery_el.value=="mail_courier"){
        delivery_address_el.className = "";
        delivery_code_el.className = "";
        delivery_kurjers_el.className = "hidden";
        delivery_trepe_el.className = "hidden";
        delivery_pecapmaksa_el.className = "hidden";
        delivery_rimi_el.className = "hidden";
        delivery_rimi50_el.className = "hidden";
        delivery_rimi10_el.className = "hidden";
        delivery_rimi300_el.className = "hidden";
        payment_el.className = "hidden";
        payment_el.value = "banklink";
        payment_banklink_el.className = "";
        delivery_pasut_el.className = "";

    }
    else if (delivery_el.value == "30"){
        delivery_address_el.className = "";
        delivery_code_el.className = "";
        delivery_trepe_el.className = "";
        delivery_kurjers_el.className = "";
        delivery_pecapmaksa_el.className = "hidden";
        delivery_rimi_el.className = "hidden";
        delivery_rimi50_el.className = "hidden";
        delivery_rimi10_el.className = "hidden";
        delivery_rimi300_el.className = "hidden";
        payment_el.className = "form";
        payment_banklink_el.className = "hidden";
        delivery_pasut_el.className = "";

    }
    else if (delivery_el.value == "bandrole"){
        delivery_address_el.className = "";
        delivery_pecapmaksa_el.className = "";
        delivery_code_el.className = "";
        delivery_kurjers_el.className = "hidden";
        delivery_trepe_el.className = "hidden";
        delivery_rimi_el.className = "hidden";
        delivery_rimi50_el.className = "hidden";
        delivery_rimi10_el.className = "hidden";
        delivery_rimi300_el.className = "hidden";
        payment_el.className = "hidden";
        payment_el.value = "cash";
        payment_banklink_el.className = "hidden";
        delivery_pasut_el.className = "";
    }
    else if ((delivery_el.value == "31" || delivery_el.value == "33" || delivery_el.value == "41") && delivery_skaits_el.value < "10"){
        delivery_code_el.className = "hidden";
        delivery_address_el.className = "hidden";
        delivery_trepe_el.className = "hidden";
        delivery_kurjers_el.className = "hidden";
        delivery_pecapmaksa_el.className = "hidden";
        delivery_rimi_el.className = "";
        delivery_rimi50_el.className = "hidden";
        delivery_rimi10_el.className = "";
        delivery_rimi300_el.className = "";
        delivery_pasut_el.className = "hidden";
        payment_el.className = "hidden";
        payment_el.value = "cash";
        payment_banklink_el.className = "hidden";
    }
    else if ((delivery_el.value == "29" || delivery_el.value == "32" || delivery_el.value == "34" || delivery_el.value == "35" || delivery_el.value == "36" || delivery_el.value == "37" || delivery_el.value == "38") && (delivery_skaits_el.value < "50")){
        delivery_code_el.className = "hidden";
        delivery_address_el.className = "hidden";
        delivery_trepe_el.className = "hidden";
        delivery_kurjers_el.className = "hidden";
        delivery_pecapmaksa_el.className = "hidden";
        delivery_rimi_el.className = "";
        delivery_rimi50_el.className = "";
        delivery_rimi10_el.className = "hidden";
        delivery_rimi300_el.className = "";
        delivery_pasut_el.className = "hidden";
        payment_el.className = "hidden";
        payment_el.value = "cash";
        payment_banklink_el.className = "hidden"; 
    }
    else if (delivery_el.value == "29" || delivery_el.value == "31" || delivery_el.value == "32" || delivery_el.value == "33" || delivery_el.value == "34" || delivery_el.value == "35" || delivery_el.value == "36" || delivery_el.value == "37" || delivery_el.value == "38" || delivery_el.value == "41"){
        delivery_code_el.className = "hidden";
        delivery_address_el.className = "hidden";
        delivery_trepe_el.className = "hidden";
        delivery_kurjers_el.className = "hidden";
        delivery_pecapmaksa_el.className = "hidden";
        delivery_rimi_el.className = "";
        delivery_rimi10_el.className = "hidden";
        delivery_rimi50_el.className = "hidden";
        delivery_rimi300_el.className = "";
        payment_el.className = "hidden";
        payment_el.value = "cash";
        payment_banklink_el.className = "hidden";
        delivery_pasut_el.className = "";
    }
    else if (delivery_el.value == "27" || delivery_el.value == "28" || delivery_el.value == "29" || delivery_el.value == "45" || delivery_el.value == "43" || delivery_el.value == "42" || delivery_el.value == "21"){
        delivery_code_el.className = "hidden";
        delivery_address_el.className = "hidden";
        delivery_trepe_el.className = "hidden";
        delivery_kurjers_el.className = "hidden";
        delivery_pecapmaksa_el.className = "hidden";
        delivery_rimi_el.className = "hidden";
        delivery_rimi50_el.className = "hidden";
        delivery_rimi10_el.className = "hidden";
        delivery_rimi300_el.className = "hidden";
        payment_el.className = "hidden";
        payment_el.value = "banklink";
        payment_banklink_el.className = "";
        delivery_pasut_el.className = "";
    }
    else {
        delivery_address_el.className = "hidden";
        delivery_code_el.className = "hidden";
        delivery_trepe_el.className = "hidden";
        delivery_kurjers_el.className = "hidden";
        delivery_pecapmaksa_el.className = "hidden";
        delivery_rimi_el.className = "hidden";
        delivery_rimi10_el.className = "hidden";
        delivery_rimi50_el.className = "hidden";
        delivery_rimi300_el.className = "hidden";

        payment_el.className = "form";
        payment_banklink_el.className = "hidden";
        delivery_pasut_el.className = "";
    }

    updateDeliveryPrice();
}

//-----
