jQuery(function($) {
	$.walletAtachControl = function(){
		$('#popupBoxWalletPay').show();
		$('#close_wallet_payment_box').click(function(){
			$('#wallet_payment_box').hide();
			$('#neobizz_pay_select').show();
		});
		$('#walletCardPaymentClose').click(function(){
			$('#walletCardPaymentBox').hide();
			$('#wallet_payment_box').show();
		});
		$('#neobizz_close_fortumo').click(function(){
			$('#neobizz_fortumo_form').hide();
			$('#neobizz_pay_select').show();
		});
		$('#neobizz_fortumo_send').click(function(){
			$('#popupBoxWalletPay').remove();
		});
		return;						
	};
	$.showIncognitoOrderBox = function (pack) {
		jQuery.ajax({
			url: PUBLIC_URL+'apps/incognito/order',
			type: 'POST',
			dataType: 'json',
			data: {pack: pack},
			success: function(transport) {
				jQuery('body').append(transport.html);
				jQuery.walletAtachControl();
				return;
			},
			error: function(obj, status, e) {
				systemMessenger.set(transport.message, 0);
				systemMessenger.display();
				$('#popupBoxWalletPay').remove();
			}
		});
	}
});

(function (jQuery) {
jQuery.fn.wPayment = function() {

	this.confirm = function(id, idp, next_url) {
		if(this.alreadyPay) {
			return;
		}
		this.alreadyPay = true;

		jQuery.ajax({
				url: PUBLIC_URL + 'ajax/confirm-pay',
				type: 'POST',
			    dataType: 'json',
			    data: {id: id, idp: idp, next_url: next_url}, 
				success: function(transport) {
					if(transport.error == false) {
						if(transport.next_url != '') {
							document.location = transport.next_url;
						} else {
							jQuery('#popupBoxWalletPay').remove();
						}
					} else {
						systemMessenger.set(transport.message, 0);
						systemMessenger.display();
						$('#popupBoxWalletPay').remove();
					}

					return;
				},
				error: function(obj, status, e) {
					systemMessenger.set(transport.message, 0);
					systemMessenger.display();
					$('#popupBoxWalletPay').remove();
				}
			});
	}

	return this;
}
})(jQuery);

(function($) {
	$.fn.Wallet = function () {
		var self = this;
		this.processing = false;
		this.showOrderBox = function(id, item) {
			self.pack = eval ('('+ $(item).attr('data') +')');
			$.ajax({
				url: PUBLIC_URL+'wallet/get-pay-code',
				type: 'POST',
				dataType: 'json',
				success: function(transport) {
					self.smsCode = transport.smsCode;
					$('#packValue').html (self.pack.value);
					$('#wSmsText').html (self.pack.servicePrefix);
					$('#wSmsNr').html (self.pack.smsNr);
					$('#wSmsPrice').html (self.pack.price +' '+ self.pack.currency);
					if(self.pack.smsNr != '1816') {
						$('#fortumoErrMsg').hide();	
					} else {
						$('#fortumoErrMsg').show();
					}	
					if (self.pack.type == 'sms') {
						$('#wSmsCode').html ('W'+self.smsCode);
					} else {
						$('#paymentId').val (self.smsCode);
						$('.wDescSmsNr').html (self.pack.smsNr);
						if (self.pack.card == 1) {
							$('#packValue2').html(self.pack.value);
							$('.walletPayOption').addClass('half');
							$('.walletCardPayment').show();
							$('.walletSmsPayment').hide();
						} else {
							$('.walletPayOption').removeClass('half');
							$('.walletCardPayment').hide();
							$('.walletSmsPayment').show();
						}
					}
					$(id).show ();
				}
			});
			return true;
		}
		this.showOrderBoxDyn = function(id, item) {
			self.pack = eval ('('+ $(item).attr('data') +')');
			$('#neobizz_pay_select').hide();
			$('#packValue').html (self.pack.val);
			$('#wSmsText').html (self.pack.servicePrefix);
			$('#wSmsNr').html (self.pack.smsNr);
			$('#wSmsPrice').html (self.pack.price +' '+ self.pack.currency);
			if(self.pack.smsNr != '1816') {
				$('#fortumoErrMsg').hide();	
			} else {
				$('#fortumoErrMsg').show();
			}	
			if (self.pack.type == 'sms') {
				$('#wSmsCode').html ('W'+self.pack.id);
			} else {
				$('.wDescSmsNr').html (self.pack.smsNr);
				if (self.pack.card == 1) {
					$('#packValue2').html(self.pack.val);
					$('.walletPayOption').addClass('half');
					$('.walletCardPayment').show();
					$('.walletSmsPayment').hide();
				} else {
					$('.walletPayOption').removeClass('half');
					$('.walletCardPayment').hide();
					$('.walletSmsPayment').show();
				}
			}
			$(id).show ();
			return true;
		}
		this.validateCode = function() {
			if (this.processing) return false;
			var paymentId = $('#paymentId').val();
			var code = $('#validationCode').val();
			if (!paymentId) {
				systemMessenger.set('payment error!', 0);
				systemMessenger.display();
				return false;
			}
			if (!code) {
				systemMessenger.set('Code not given!', 0);
				systemMessenger.display();
				return false;
			}
			this.processing = true;
			$.ajax({
				url: PUBLIC_URL+'wallet/validate',
				type: 'POST',
				dataType: 'json',
				data: {paymentId: paymentId, code: code},
				success: function(transport) {
					if (!transport.error) {
						$('#validationCode').val('');
						$('#paymentId').val('');
						$('#paymentBox').hide();
						if (transport.reload) {
							window.location.reload();
						} else
						if (transport.nextUrl) {
							window.location.assign(transport.nextUrl);
						}
					} else {
						systemMessenger.set(transport.message, 0);
						systemMessenger.display();
					}
					self.processing = false;
				},
				error: function(obj, status, e) {
					systemMessenger.set('', 0);
					systemMessenger.display();
					self.processing = false;
				}
			});
			return true;
		}
		this.showCardPayment = function () {
			$('#cardPackPrice').text (self.pack.price);
			$('#cardPackFinalPrice').text ((self.pack.price * self.exchange).toFixed(2));
			$('input[name="package"]').val (self.pack.idpay);
			$('input[name="payment"]').val (self.smsCode);
			$('input[name="title"]').val ('Servicii internet Neogen '+ self.pack.price +' euro');
			$('#walletCardPaymentBox').show ();
		}
		this.checkCardpaymentData = function (frm) {
			$('#walletCardPaymentErrorMessage').hide();
			var fields = [frm.firstname, frm.name, frm.cnp, frm.ci, frm.address, frm.cod_postal, frm.tel];
			var error = false;

			for (var i=0; i<7; i++) {
				var field = fields[i];
				field.value = field.value.trim ();
				if (field.value.length < 2) {
					error = true;
					field.focus();
					$('#walletCardPaymentErrorMessage').html (wallet.cardPaymentErrorMessages[i]);
					break;
				}
			}

			if (!error && frm.cityId.value < 1) {
				frm.cityId.focus();
				error = true;
				$('#walletCardPaymentErrorMessage').html (wallet.cardPaymentErrorMessages[7]);
			}

			if (!error && frm.cityId.value == 10 && frm.sectorId.value < 1) {
				frm.sectorId.focus();
				error = true;
				$('#walletCardPaymentErrorMessage').html (wallet.cardPaymentErrorMessages[8]);
			}

			if (error) {
				$('#walletCardPaymentErrorMessage').show();
				return false;
			}

			return true;
		}
		this.mobilpay = function () {
			window.open(PUBLIC_URL +"wallet/pay/promoType/"+ self.pack.idpay +"/id/"+ self.smsCode, "mobilpay", "scrollbars=1,width=900");
			return false;
		}
		return this;
	}
})(jQuery);
var wallet = jQuery('body').Wallet();