function PaymentFizOrder(params){
	var params = params || {};
	this.params = params;
	this.fields = ['nameRes','namePayer','nameBank','bik','summ','inn','kpp','bankAccount','duty','payerAccount'];
	this.bind();
}
PaymentFizOrder.prototype.bind = function(){
	for(var i = 0, length = this.fields.length; i < length; i++){
		new LinkFields({
			name: this.fields[i],
			input: '#form_' + this.fields[i],
			view: '#duty_' + this.fields[i]
		});
	}
}

function func_number(num) {
	var cnt = 0;
	num = num.toString();
	for (var x = num.length; x >= 0; x--) {
		if (cnt % 3 == 0 && cnt > 0 && x > 0)
			num = num.substr(0, x)+' '+num.substr(x, num.length);
		cnt++;
	}
	return num;
}

function Sum2Str(sum, is_cent) {
	if (!sum) var sum = '0';
	sum = sum.toString();
	sum = parseFloat(sum.replace(/,/, '.'));
	iSum = parseInt(sum);
	rSum = Math.round((sum - iSum) * 100);

	if (is_cent == false)
	   return '<span class="rub">'+func_number(iSum) + '</span> руб.';
	else
		return '<span class="rub">'+func_number(iSum) + '</span> руб. <span class="kop">' + rSum + '</span> коп. ';
}

function LinkFields(params){
	this.name = params.name;
	this.$input = $(params.input);
	this.$view = $(params.view);
	this.bind();
}

LinkFields.prototype.bind = function(){
	var self = this;
	self.$view.text(self.$input.val());
    if(self.name == 'summ')
        self.$view.html(Sum2Str(self.$input.val()));
    if(self.name == 'duty') {
        self.$view.html(Sum2Str(self.$input.val()));
        $('#duty_duty_full').html($('#duty_duty').html());
    }

	$(this.$input).keyup(function(){
		self.$view.text(self.$input.val());
        if(self.name == 'summ')
            self.$view.html(Sum2Str(self.$input.val()));
		if(self.name == 'duty'){
            self.$view.html(Sum2Str(self.$input.val()));
            $('#duty_duty_full').html($('#duty_duty').html());
		}
	});
}

function save_pdf(id, mode) {
	var forCheckMSK = $('.b-blank-title'),
		requisites = ['name', 'title', 'code', 'inn', 'kpp', 'bic', 'account', 'okato', 'field_1', 'field_8'],
		extra = ['literalSumm', 'duty', 'summ', 'date'],
		path = window.location.pathname.split('/').slice(1, 4).join('/'),
		href = '/' + path + '/pdf?mode='+mode+'&id='+id, 
		fields, i;
	
	if (forCheckMSK.hasClass('b-blank-title--asgm')) {
		fields = ['namePayer','summ'];
		
	} else {
		fields = ['nameRes','namePayer','nameBank','bik','summ','inn','kpp','bankAccount','duty','payerAccount'];
	}

	for(i in fields) { 
		var $field = $('#form_'+fields[i]);
		if ($field.length) {
			href += '&'+fields[i]+'='+$field.val();
		}
	}
	
	for (i in requisites) {
		$field = $('#form_court_'+requisites[i]);
		if ($field.length) {
			href += '&court_'+requisites[i]+'='+$field.val();
		}
	}
	
	for (i in extra) {
		$field = $('#duty_'+extra[i]);
		if ($field.length) {
			href += '&duty_'+extra[i]+'='+$field.text();
		}
	}

	window.open(href);
}

$(document).ready(function(){
    new PaymentFizOrder();
});

$(function() {
	var title = $('.js-title');
		isASGM = false,
		date = new Date(),
		monthName = ["января", "февраля", "марта", "апреля", "мая", "июня", "июля", "августа", "сентября", "октября", "ноября", "декабря"],
		now = '&laquo;' + date.getDate() + '&raquo; ' + monthName[date.getMonth()] + ' ' + date.getFullYear();
	
	if (title.hasClass('b-blank-title--asgm')) {
		isASGM = true;
	}
	$('.js-respondent-field').keyup(function() {
		var value = $(this).val(),
			addField = $('.js-price');

		addField.text(value);
	});
	$('.js-price-field').keyup(function() {
		var value = $(this).val(),
			addField = $('.js-respondent');

		addField.text(value);
	});
	
	$('#duty_date').html(now);

})
