ashoe.view.ViewOrder = {
	drawBasket: function(){
		var ref2 = document.getElementById("basket2")
		var ref3 = document.getElementById("basket3")
		var qntSum = 0
		for (var i = 0; i < ashoe.Ashoe.basket.orderItems.length; i++) {
			qntSum += parseInt(ashoe.Ashoe.basket.orderItems[i].quantity)
		}
		if (qntSum>0) {
			ref2.innerHTML = qntSum + " szt."
			ref3.innerHTML = "suma: " + ashoe.view.ViewCommon.formatPrice(ashoe.Ashoe.basket.totalPrice)

		}
		else {
			ref2.innerHTML = '/pusty/';
				ref3.innerHTML = "";
		}
	},
	showBasketView: function(selectTab){
		var ref = document.getElementById("basketView")
		jslt.element.removeAllChildren(ref)
		var s = ""
		s += "<table class='basketViewTable'>"
		s += "<tr>"
		s += "<th class='colHdr1 colHdrBorder colHdrBG firstCol'>zdjęcie:</th>"
		s += "<th class='colHdr1 colHdrBorder colHdrBG'>nazwa:</th>"
		s += "<th class='colHdr2 colHdrBorder colHdrBG'>rozmiar:</th>"
		s += "<th class='colHdr1 colHdrBorder colHdrBG'>kolor:</th>"
		s += "<th class='colHdr2 colHdrBorder colHdrBG'>ilość:</th>"
		s += "<th class='colHdr3 colHdrBorder colHdrBG'>cena:</th>"
		s += "<th class='colHdr2 colHdrBG lastCol'>wartość:</th>"
		s += "<th><img src='/modules/Ashoe/skin/koszyk_close.gif' class='pointerCursor' onclick='ashoe.Ashoe.viewBack()'/></th>"
		s += "</tr>"
		var getCell = function(classes, c, colspan){
			var s = "<td class='" + classes + "'";
			if (colspan) {
				s += " colspan='" + colspan + "'"
			}
			s += ">"
			s += c;
			s += "</td>";
			return s;
		}
		for (var i = 0; i < ashoe.Ashoe.basket.orderItems.length; i++) {
			var oItem = ashoe.Ashoe.basket.orderItems[i]
			var cellIter = 1
			s += "<tr>"
			s += getCell("lb rb", "<img src='" + ashoe.Ashoe.buildImagePath('small', oItem.idShoe, oItem.idColor, 1) + "' />")
			s += getCell("rb", oItem.name)
			s += getCell("rb", oItem.size)
			s += getCell("rb", oItem.color)
			s += getCell("rb", oItem.quantity)
			s += getCell("rb", ashoe.view.ViewCommon.formatPrice(oItem.price))
			s += getCell("rb", ashoe.view.ViewCommon.formatPrice(oItem.price * oItem.quantity))
			var sManipulator = "<img src='/modules/Ashoe/skin/koszyk_zmien.gif' class='pointerCursor' onclick='ashoe.Ashoe.evShoeSelect({idShoe:" + oItem.idShoe + ",idColor:" + oItem.idColor + ",size:\"" + oItem.size + "\"" + ",idOrderItem:" + oItem.idOrderItem + ",quantity:" + oItem.quantity + ",modifying:true})'/>"
			sManipulator += "<img src='/modules/Ashoe/skin/koszyk_usun.gif' class='pointerCursor' onclick='ashoe.Ashoe.evRemoveFromBasket(" + oItem.idOrderItem + ")'/>"
			s += getCell("buttonsTD", sManipulator)
			s += "</tr>"
		}

		s += "<tr>"
		s += "<td colspan='7' class='totalPriceTd'>suma: "
		s += ashoe.view.ViewCommon.formatPrice(ashoe.Ashoe.basket.totalPrice)
		s += "</td><td></td>"
		s += "</tr>"
		s += "<tr>"
		s += "<td colspan='7'>"
		s += "<div class='pointerCursor rightArrow' onclick='ashoe.view.ViewOrder.showOrderForm()'>zamawiam</div>"
		s += "</td><td></td>"
		s += "</tr>"
		s += "</table>"

		s += "<br/><br/>"
		s +="<table class='basketViewTable textView rabatyTable'>"
	        s += "<tr>"
        	s += "<th class='longTH'>"
		s += "<div class='leftHeaderBg'>Rabaty</div>"
	        s += "</th>"
	        s += "</tr>"
	        s += "<tr>"
        	s += "<td class='lb rb bb'>"
		s += "<div class='textViewDiv'>Zamówienia powyżej 200 zł brutto lub objęte promocja na wysyłkę, wysyłane są na koszt sklepu BUTKI.PL.<br/><br/>Zakup powyżej 500zł rabat 2%, powyżej 1000zł rabat 3%."
		s += "</div></td>"
		s += "</tr>"
		s += "</table>"



		ref.innerHTML = s
		if(selectTab){
			ashoe.Ashoe.tabView.selectById("basketView", true)
			}
	},
	showLoginForm: function(){
		var ref = document.getElementById("basketView")
		var s = "<table class='basketViewTable orderViewTable'>"

		s += "<tr>"
		s += "<td>"
		s += "<div class='elRelative' id='orderButtons'>"
		s += "<div class='pointerCursor leftArrow elAbsolute' onclick='ashoe.view.ViewOrder.showBasketView(true)'>powrót</div>"
		s += "<div class='pointerCursor rightArrow  elAbsolute' onclick='ashoe.view.ViewOrder.evOrderClick()'>zaloguj</div>"
		s += "</div>"
		s += "</td><td></td>"
		s += "</tr>"
		s += "</table>"
		ref.innerHTML = s
	},
	showRegisterPart:false,
	showOrderForm: function(){
		var ref = document.getElementById("basketView")
		var s = "<table class='basketViewTable orderViewTable'>"
		s += "<tr>"
		s += "<th class='longTH'>"
		s += "<div class='leftHeaderBg'>"
		s += "Formularz zamówienia"
		s += "</div>"
		s += "</th>"
		s += "<th><img src='/modules/Ashoe/skin/koszyk_close.gif' class='pointerCursor' onclick='ashoe.Ashoe.viewBack()'/></th>"
		s += "</tr>"
		s += "<tr>"
		s += "<td class='lb rb bb orderTD'>"
		s += "<table>"
		s += "<tr>"
		s += "<td>"

		s += "<form id='customerForm'>"
		s += "<table>"
		s += "<tr>"
		s += "<td>"
		s += "</td>"
		s += "<td>"
		s += "Dane zamawiającego<br/><br/>"
		s += "</td>"
		s += "</tr>"
		s += ashoe.view.ViewOrder.createOrderRow("Imię i nazwisko", "name")
		s += ashoe.view.ViewOrder.createOrderRow("Adres", "address")
		s += ashoe.view.ViewOrder.createOrderRow("Kod pocztowy", "post_code")
		s += ashoe.view.ViewOrder.createOrderRow("Miasto poczta", "city")
		s += ashoe.view.ViewOrder.createOrderRow("Telefon", "phone")
		s += ashoe.view.ViewOrder.createOrderRow("E-mail", "email")
		if(ashoe.view.ViewOrder.showRegisterPart){
			s += ashoe.view.ViewOrder.createOrderRow("Hasło", "passwd")
			s += ashoe.view.ViewOrder.createOrderRow("Powtórz hasło", "passwdCompare")
			s += ashoe.view.ViewOrder.createOrderRow("Nazwa użytkownika (nick)", "nick")
		}
		s += "</table>"
		s += "</form>"
		s += "<form id='invoiceForm'><br/>"
		s += "<table id='invoiceDataTable' class='noVisible'>"
		s += "<tr>"
		s += "<td>"
		s += "</td>"
		s += "<td>"
		s += "Dane do faktury"
		s += "</td>"
		s += "</tr>"
		s += ashoe.view.ViewOrder.createOrderRow("Imię i nazwisko", "name_invoice", "", "invoiceNameLabel")
		s += ashoe.view.ViewOrder.createOrderRow("Adres", "address_invoice")
		s += ashoe.view.ViewOrder.createOrderRow("Kod pocztowy", "post_code_invoice")
		s += ashoe.view.ViewOrder.createOrderRow("Miasto poczta", "city_invoice")
		s += ashoe.view.ViewOrder.createOrderRow("NIP", "nip")
		s += ashoe.view.ViewOrder.createOrderRow("REGON", "regon", "disabled='true'")
		s += "</table>"
		s += "</form>"

		s += "</td>"
		s += "<td class='orderFormRight orderTD'>"
		s += "Rodzaj dostawy<br/>"
		s += ashoe.view.ViewOrder.createSelect("deliveryType", [["za pobraniem", "za pobraniem"], ["przedpłata", "przedpłata"], ["odbiór osobisty", "odbiór osobisty"]])
		s += "<div id='priceWithDeliveryDiv'></div>"
		s += "<br/>Potwierdzenie zamówienia<br/>"
		s += ashoe.view.ViewOrder.createSelect("confirmationType", [["potwierdzenie e-mail", "potwierdzenie e-mail"], ["potwierdzenie telefoniczne", "potwierdzenie telefoniczne"]])
		s += "<div id='invoiceFields'>"
		s += "<div>"
		s += "<label for='isInvoice'>faktura</label>"
		s += "<input type='checkbox' id='isInvoice' onclick='ashoe.view.ViewOrder.evIsInvoiceClick()'/>"
		s += "</div>"
		s += "<div id='firmInvoiceLikeCustomerField' style='display:none'>"
		s += "<label for='invoiceDataLikeCustomer'>dane faktury jak zamówienie</label>"
		s += "<input type='checkbox' id='invoiceDataLikeCustomer' onclick='ashoe.view.ViewOrder.evInvoiceDataLikeCustomerClick()'/>"
		s += "</div>"
		s += "<div id='firmInvoiceField' style='display:none'>"
		s += "<label for='invoiceForFirm'>faktura na firmę</label>"
		s += "<input type='checkbox' id='invoiceForFirm' onclick='ashoe.view.ViewOrder.evInvoiceForFirmClick()'/>"
		s += "</div>"
		s += "<div>"
		s += "<label for='isBulletinAccept'>wyrażam zgodę<br/>na otrzymywanie biuletynu</label>"
		s += "<input type='checkbox' id='isBulletinAccept' checked='checked'/>"
		s += "</div>"
		s += "</div>"

		s += "</td>"
		s += "</tr>"
		s += "</table>"
		s += "</td>"
		s += "<td></td>"
		s += "</tr>"
		s += "<tr>"
		s += "<td>"
		s += "<div class='elRelative' id='orderButtons'>"
		s += "<div class='pointerCursor leftArrow elAbsolute' onclick='ashoe.view.ViewOrder.showBasketView(true)'>powrót</div>"
		s += "<div class='pointerCursor rightArrow  elAbsolute' onclick='ashoe.view.ViewOrder.evOrderClick()'>wyślij zamówienie</div>"
		s += "</div>"
		s += "</td><td></td>"
		s += "</tr>"
		s += "</table>"
		ref.innerHTML = s
		$('#deliveryType').change(function(){ashoe.view.ViewOrder.evDeliveryTypeChange()})
		ashoe.view.ViewOrder.evDeliveryTypeChange()
	},
	createOrderRow: function(label, fieldId, fieldString, labelId){
		if (fieldString == undefined) {
			fieldString = ""
		}
		if (labelId == undefined) {
			labelId = ""
		}
		var s = "<tr>"
		s += "<td class='labelTD' id='" + labelId + "'>"
		s += label
		s += "</td>"
		s += "<td  class='fieldTD'>"
		s += "<textarea id='" + fieldId + "' " + fieldString + " ></textarea>"
		s += "</td>"
		s += "</tr>"
		return s
	},
	createSelect: function(fieldId, options){
		var s = "<select id='" + fieldId + "'>"
		for (var i = 0; i < options.length; i++) {
			s += "<option value='" + options[i][0] + "'>"
			s += options[i][1]
			s += "</option>"
		}
		s += "</select>"
		return s
	},
	evIsInvoiceClick: function(){
		var useInvoice = document.getElementById("isInvoice").checked
		var d = useInvoice ? "block" : "none"
		document.getElementById("invoiceDataTable").style.display = document.getElementById("firmInvoiceLikeCustomerField").style.display = document.getElementById("firmInvoiceField").style.display = d
		ashoe.Ashoe.basket.useInvoice = useInvoice
	},
	evInvoiceDataLikeCustomerClick: function(){
		if (document.getElementById("invoiceDataLikeCustomer").checked) {
			document.getElementById("name_invoice").value = document.getElementById("name").value
			document.getElementById("address_invoice").value = document.getElementById("address").value
			document.getElementById("post_code_invoice").value = document.getElementById("post_code").value
			document.getElementById("city_invoice").value = document.getElementById("city").value
		}
	},
	evInvoiceForFirmClick: function(){
		if (document.getElementById("invoiceForFirm").checked) {
			document.getElementById("invoiceNameLabel").innerHTML = "Nazwa firmy"
			document.getElementById("regon").disabled = false
			ashoe.Ashoe.basket.invoiceForFirm = true
		}
		else {
			document.getElementById("invoiceNameLabel").innerHTML = "Imię i nazwisko"
			document.getElementById("regon").disabled = true
			ashoe.Ashoe.basket.invoiceForFirm = false
		}
	},
	evOrderClick: function(){
		var validate = true
		var customer = {}
		var customerForm = document.getElementById("customerForm")
		if (validate) {
			var rules = new jslt.rules.Rules()
			rules.addRule("name", jslt.rules.methods.empty, {
				error: "Wymagane imię i nazwisko"
			})
			rules.addRule("address", jslt.rules.methods.empty, {
				error: "Wymagany adres"
			})
			rules.addRule("post_code", jslt.rules.methods.empty, {
				error: "Wymagany kod pocztowy"
			})
			rules.addRule("city", jslt.rules.methods.empty, {
				error: "Wymagane miasto"
			})
			rules.addRule("phone", jslt.rules.methods.empty, {
				error: "Wymagany telefon"
			})
			rules.addRule("email", jslt.rules.methods.empty, {
				error: "Wymagany e-mail"
			})
			if (ashoe.Ashoe.basket.useInvoice) {
				rules.addRule("name_invoice", jslt.rules.methods.empty, {
					error: "Wymagana nazwa na fakturze"
				})
				rules.addRule("address_invoice", jslt.rules.methods.empty, {
					error: "Wymagany adres na fakturze"
				})
				rules.addRule("post_code_invoice", jslt.rules.methods.empty, {
					error: "Wymagany kod pocztowy na fakturze"
				})
				rules.addRule("city_invoice", jslt.rules.methods.empty, {
					error: "Wymagane miasto na fakturze"
				})
				rules.addRule("nip", jslt.rules.methods.empty, {
					error: "Wymagany NIP"
				})
				if (ashoe.Ashoe.basket.invoiceForFirm) {
					rules.addRule("regon", jslt.rules.methods.empty, {
						error: "Wymagane REGON"
					})
				}
			}
			rules.view = new jslt.rules.view.Basic()
			if (!rules.check()) {
				return
			}
		}
		customer.name = customerForm.name.value
		customer.address = customerForm.address.value
		customer.post_code = customerForm.post_code.value
		customer.city = customerForm.city.value
		customer.phone = customerForm.phone.value
		customer.email = customerForm.email.value
		customer.useBulletin =document.getElementById('isBulletinAccept').checked
		var basket = {}
		basket.idBasket = ashoe.Ashoe.basket.idBasket
		basket.deliveryType = document.getElementById("deliveryType").value
		basket.deliveryFee = ashoe.Ashoe.basket.deliveryFee
		basket.confirmationType = document.getElementById("confirmationType").value
		basket.useInvoice=ashoe.Ashoe.basket.useInvoice;
		var invoice = {}
		if (ashoe.Ashoe.basket.useInvoice) {
			var invoiceForm = document.getElementById("invoiceForm")
			invoice.name = invoiceForm.name_invoice.value
			invoice.address = invoiceForm.address_invoice.value
			invoice.post_code = invoiceForm.post_code_invoice.value
			invoice.city = invoiceForm.city_invoice.value
			invoice.nip = invoiceForm.nip.value
			invoice.regon = invoiceForm.regon.value
			invoice.client_type = ashoe.Ashoe.basket.invoiceForFirm ? "firma" : "klient indywidualny"
		}
		ashoe.Ashoe.evOrder(customer, basket, invoice)
	},
	evDeliveryTypeChange: function(){
		var s = "Koszt zamówionych butów: " + ashoe.view.ViewCommon.formatPrice(ashoe.Ashoe.basket.totalPrice)
		var deliveryTypeRef = document.getElementById("deliveryType")
		ashoe.Ashoe.basket.deliveryFee = ashoe.Ashoe.basket.deliveryFees[deliveryTypeRef.selectedIndex]
		var minimalTotalCost=200
		   if (deliveryTypeRef.selectedIndex < 2) {
			if (ashoe.Ashoe.basket.totalPrice < minimalTotalCost) {
				s += "<br/> + koszt dostawy: " + ashoe.view.ViewCommon.formatPrice(ashoe.Ashoe.basket.deliveryFee)
				s += " = <b>" + (ashoe.view.ViewCommon.formatPrice(ashoe.Ashoe.basket.totalPrice + ashoe.Ashoe.basket.deliveryFee)) + "</b>"
			}
			else if (ashoe.Ashoe.basket.totalPrice >= minimalTotalCost) {
				ashoe.Ashoe.basket.deliveryFee=0
				s += "<br/>koszt dostawy anulowany przy zakupie powyżej "+minimalTotalCost+" zł "
			}
		}
		document.getElementById("priceWithDeliveryDiv").innerHTML = s
	}
}

