// (C) 2011, lastadm, mailto:lastadm@mail.ru

function init_loan_request()
{
        if($('loan-request') == null)
                return false;

	$('approval').onclick=function(){
		approve_form();
		return true;
	}
	$('query_form').onreset=function(){
		$$('input.loanrequest,select.loanrequest').each(function(objct){
			objct.clear();
		});
		approve_form();
		return false;
	}
	$('outbankdebt').onclick=function(){
		outbankdebt_enable();
		return true;
	}
	$('confirmation').onclick=function(){
		submit_enable();
		return true;
	}

	$('send-request').onclick=function(){
		formdata=collect_formdata();
		formdata.set('queryevent', this.id);
		post_json($('query_form').action, formdata, request_postloader);
		return false;
	}

	function approve_form()
	{
		$$('input.ux-button,input.loanrequest,select.loanrequest').each(function(objct){
			if($('approval').checked)
			{
				objct.enable();
			}else{
				objct.disable();
			}
		});
		if($('approval').checked)
		{
			outbankdebt_enable();
			submit_enable();
			$$('span.p-link').each(function(objct){
				objct.removeClassName('link-disabled');
			});
		}else{
			$$('span.p-link').each(function(objct){
				objct.addClassName('link-disabled');
			});
		}
	}
	function outbankdebt_enable()
	{
		if($('outbankdebt').checked)
			$('outbankdebt-value').enable();
		else
			$('outbankdebt-value').disable();
	}
	function submit_enable()
	{
		if($('confirmation').checked)
			$('send-request').enable();
		else
			$('send-request').disable();
	}
	function collect_formdata()
        {
		var formdata=$H();
		var value=null;

		$$('input.loanrequest,select.loanrequest').each(function(objct){
			if(objct.type == 'checkbox')
			{
				if(objct.checked)
					value=objct.value;
				else
					value=null;
			}else{
				value=objct.value;
			}
			formdata.set(objct.id, value);
		});
		return formdata;
	}

        function request_postloader(values)
        {
		// Reload CAPTCHA image
		var captcha=$('captcha-img').src.replace(/(.*)\?.*/g, '$1');
		var rightnow = new Date();
		$('captcha-img').src=captcha + '?' + rightnow.getTime();
		if(values.error)
		{
			rise_error();
		}else{
			load_url('/private/credits/request/success', 'loan-request');
		}
	}

}

function init_pselectors()
{
        popups=$$('span.p-link');

        popups.each(function(pu){
		var closelink;
		var pselect;
		var popup;
		var opened=false;

                pu.onclick = function(){
			if(pu.hasClassName('link-disabled') || opened)
				return false;
                        pselect=$('ps'+this.id.substr(this.id.lastIndexOf('#')));
			if(!pselect)
				return false;

			// Opening pop-up here
			popup=new Element('div',{'class':'popup'});
			popup.identify();
			offset=pu.cumulativeOffset();

			popup.style.top=offset.top + 'px';
			popup.style.left=offset.left + 'px';

			layout=new Element.Layout(pselect);

			popup.style.width=layout.get('width') + 'px';
			popup.style.height=layout.get('height') + 'px';

			popup.update(pselect.clone(true).setStyle('display:block'));

			if(!pselect.readAttribute('title'))
				popup.insert(new Element('div',{'class':'title'}).update('Выбор'));
			else
				popup.insert(new Element('div',{'class':'title'}).update(pselect.readAttribute('title')));

			closelink=new Element('img',{'src':'/close-16x16.png', 'class':'close'});
			closelink.style.left=(layout.get('width')-7)+'px';
			closelink.onclick = function(){
				Shadower.deshadow(popup.id);
				popup.remove();
				opened=false;
				return false;
			}
			popup.insert(closelink);

			$(document.body).insert(popup);
                        Shadower.shadow(popup.id, {distance:4, angle: 130, opacity: 0.7,
					             nestedShadows: 4, color: '#707070'});
			opened=true;
			if(popup.select('li') && pselect.readAttribute('target'))
			{
				popup.select('li').each(function(li){
					li.onclick=function(){
						$(pselect.readAttribute('target')).value=this.readAttribute('value');
						pu.innerHTML=this.innerHTML;
						Shadower.deshadow(popup.id);
						popup.remove();
						opened=false;
					}

				});
			}
                        return false;
                }
        });
}

function init_overall_cost()
{
	if(!$('overall-cost'))
		return false;

	$('overall-cost-recalculate').innerHTML='Укажите сумму кредита';
	$('overall-cost-recalculate').setStyle('text-decoration:none');

	$('loan-limit').onkeyup = function(){
		if(!isNaN(this.value) && $('loan-limit').value > 0)
		{
			$('overall-cost-recalculate').innerHTML='Рассчитать полную стоимость';
			$('overall-cost-recalculate').setStyle('text-decoration:underline');
		}else{
			$('overall-cost-recalculate').innerHTML='Укажите сумму кредита';
			$('overall-cost-recalculate').setStyle('text-decoration:none');
		}
		return true;
	}
	$('overall-cost-recalculate').onclick = function(){
		var html;
		this.blur();
		if($('loan-limit').value > 0)
		{
			if(!$('dataframe') || !$('ajax-result'))
				return false;
			html=this.innerHTML;
			this.innerHTML='<img src=/wait.gif>';
			load_url(this.href+'?product='+$('product-id').value+'&limit='+$('loan-limit').value, 'ajax-result', function(){
				if($('ajax-result').innerHTML == 'OK')
					$('dataframe').src=$('overall-cost-recalculate').href+'?result';
				else
					rise_error();
				$('overall-cost-recalculate').innerHTML=html;
			});
		};
		return false;
	}
	return true;
}

function rise_error()
{
	Modalbox.show('/popup/exerror', {title: 'При обработке запроса произошла ошибка',
		      width: 500, afterLoad:init_error_popup });
}

