﻿var checkEmail = function(value){
	return (/^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/.test(value));
}

var checkNwsUnsubForm = function(){
	if(Ext.fly('email').dom.value == ''){
		alert('Unesite E-mail!');
		Ext.fly('email').dom.focus();
		return false;
	}else if(!checkEmail(Ext.fly('email').dom.value)) {
		alert('Unesite ispravan E-mail!');
		Ext.fly('email').dom.focus();
		Ext.fly('email').dom.select();
		return false;
	}
	return true;
}

var checkNwsSubForm = function(){
	if(Ext.fly('firstName').dom.value == ''){
		alert('Unesite ime!');
		Ext.fly('firstName').dom.focus();
		return false;
	}else if(Ext.fly('lastName').dom.value == ''){
		alert('Unesite prezime!');
		Ext.fly('lastName').dom.focus();
		return false;
	}else if(Ext.fly('email').dom.value == ''){
		alert('Unesite E-mail!');
		Ext.fly('email').dom.focus();
		return false;
	}else if(!checkEmail(Ext.fly('email').dom.value)) {
		alert('Unesite ispravan E-mail!');
		Ext.fly('email').dom.focus();
		Ext.fly('email').dom.select();
		return false;
	}
	return true;
}

var checkContactForm = function(){
	if(Ext.fly('captchaCode').dom.value == ''){
		alert('Unesite kontrolni kod!');
		Ext.fly('captchaCode').dom.focus();
		return false;
	}else if(Ext.fly('firstName').dom.value == ''){
		alert('Unesite ime!');
		Ext.fly('firstName').dom.focus();
		return false;
	}else if(Ext.fly('lastName').dom.value == ''){
		alert('Unesite prezime!');
		Ext.fly('lastName').dom.focus();
		return false;
	}else if(Ext.fly('email').dom.value == ''){
		alert('Unesite E-mail!');
		Ext.fly('email').dom.focus();
		return false;
	}else if(!checkEmail(Ext.fly('email').dom.value)) {
		alert('Unesite ispravan E-mail!');
		Ext.fly('email').dom.focus();
		Ext.fly('email').dom.select();
		return false;
	}else if(Ext.fly('subject').dom.value == '') {
		alert('Unesite naslov poruke!');
		Ext.fly('subject').dom.focus();
		return false;
	}else if(Ext.fly('content').dom.value == '') {
		alert('Unesite sadržaj poruke!');
		Ext.fly('content').dom.focus();
		return false;
	}
	return true;
}

var checkSendFrendForm = function(){
	if(Ext.fly('captchaCode').dom.value == ''){
		alert('Unesite kontrolni kod!');
		Ext.fly('captchaCode').dom.focus();
		return false;
	}else if(Ext.fly('firstName').dom.value == ''){
		alert('Unesite ime!');
		Ext.fly('firstName').dom.focus();
		return false;
	}else if(Ext.fly('lastName').dom.value == ''){
		alert('Unesite prezime!');
		Ext.fly('lastName').dom.focus();
		return false;
	}else if(Ext.fly('senderEmail').dom.value == ''){
		alert('Unesite E-mail pošiljatelja!');
		Ext.fly('senderEmail').dom.focus();
		return false;
	}else if(!checkEmail(Ext.fly('senderEmail').dom.value)) {
		alert('Unesite ispravan E-mail pošiljatelja!');
		Ext.fly('senderEmail').dom.focus();
		Ext.fly('senderEmail').dom.select();
		return false;
	}else if(Ext.fly('recieverEmail').dom.value == ''){
		alert('Unesite E-mail primatelja!');
		Ext.fly('recieverEmail').dom.focus();
		return false;
	}else if(!checkEmail(Ext.fly('recieverEmail').dom.value)) {
		alert('Unesite ispravan E-mail primatelja!');
		Ext.fly('recieverEmail').dom.focus();
		Ext.fly('recieverEmail').dom.select();
		return false;
	}
	return true;
}

var WSPCaptcha = function(){
	var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
	var captchaSkinId = 3298;
	var wsp_key_length = 32;
	var wsp_key = '';
	for (var i=0; i<wsp_key_length; i++) {
		var rnum = Math.floor(Math.random() * (chars.length-1));
		wsp_key += chars.substring(rnum, (rnum + 1));
	}
	Ext.fly('captchaImg').dom.src = 'http://webspamprotect.com/captcha.php?id=' + captchaSkinId + '&key=' + wsp_key;
	Ext.fly('captchaKey').dom.value = wsp_key;
}

var printWindow = function(e, t){
	hs.htmlExpand(
		null,
		{
			width:650,
			outlineType: 'rounded-white', 
			wrapperClassName: 'draggable-header', 	
			headingText: 'Print',
			objectType: 'iframe',
			src:'?print=y&' + (document.location.search.length > 0 ? document.location.search.substring(1) : ''),
			align:'center',
			numberPosition:null
		}
	);
	return false;
}

// central height hack
var alignCentralContentHeight = function(){
	var main = Ext.select('div.mainContainer').item(0),
	left = main.select('div.container2 > div.leftColumn').item(0),
	central = main.select('div.centerColumn > table.round-corners').item(0),
	lH, cH;
	if(central && left){
		lH = left.getHeight() - (Ext.isIE ? 13 : 15);
		cH = central.getHeight();
		if(cH < lH){
			central.select('tr:nth-child(2) > td:nth-child(2)').item(0).setStyle('vertical-align', 'top').setHeight(lH);
		}
	}
}

window.onload = alignCentralContentHeight;

Ext.onReady(function() {
	// top menu control
	if(Ext.fly('topMenu')){
		var topMenu = new Ext.ux.Menu('topMenu', {transitionType: 'slide'});
		topMenu.el.setStyle(
			{
				position:'',
				visibility:'',
				display:''
			}
		);
	}
	// vertical text scroller widget
	if(Ext.fly('verTextScroller')){
		new ABCS.Carousel('verTextScroller', {
			transitionType:'scroll-top',
			itemSelector:'div',
			interval: 0.03,
			initDelay:2,
			pauseOnHover:true
		});
	}
	// image slider widget
	if(Ext.fly('imgSliderTop')){
		new ABCS.Carousel('imgSliderTop', {
			interval: 8,
			transitionSpeed: 0.5,
			initDelay:5
		});
	}
	// foto album slider widget
	if(Ext.fly('fotoAlbumSlider')){
		new ABCS.Carousel('fotoAlbumSlider', {
			transitionType: 'fade',
			itemSelector:'div',
			interval: 7,
			transitionSpeed: .8,
			initDelay:5
		});
	}
	// columns text scroller widget
	var topColumnsScrollers = Ext.query('div.topWidgetColumn > *.wraper');
	if(topColumnsScrollers.length > 0){
		Ext.each(topColumnsScrollers,
			function(el){
				var items = Ext.fly(el).select('div'),
				height = 0;
				items.each(
					function(el){
						height += el.getHeight();
					}
				);
				if(height > Ext.fly(el).getHeight()){
					new ABCS.Carousel(el, {
						transitionType:'scroll-top',
						itemSelector:'div',
						interval: 0.03,
						initDelay:2,
						pauseOnHover:true
					});
				}
			}
		);
	}else{
		delete(topColumnsScrollers);
	}
	// fort column rotator
	if(Ext.fly('forthColumn')){
		new ABCS.Carousel('forthColumn', {
			transitionType: 'fade',
			itemSelector:'div',
			interval: 7,
			transitionSpeed: 2,
			initDelay:5
		});
	}
	//tabs
	if(Ext.fly('tabContainer')){
		var panel = Ext.select('.tab-buttons-panel').on('click', 
			function(e, t) {
				Ext.fly(t).radioClass('tab-show');
				Ext.get('content' + t.id.slice(-1)).radioClass('tab-content-show');
			}, 
			null, {delegate: 'li'}
		);
	}
	
	// foto album tree
	if(Ext.fly('foto-root')){
		var treeExpanders = Ext.get('foto-root').select('li:has(ul) > table img.expander');
		if(treeExpanders.elements.length > 0){
			treeExpanders.on('click', function(e, t){
				var t = Ext.get(t), childUL = t.findParentNode('li', 5, true).child('ul:first'),
				cfg = {
					useDisplay: true, 
					easing:'easeNone', 
					duration:.2,
					callback:function(hider){
						if(t.hasClass('opened')){
							t.replaceClass('opened', 'closed')
						}else if(t.hasClass('opened-hover')){
							t.replaceClass('opened-hover', 'closed-hover');
						}
						else if(t.hasClass('closed')){
							t.replaceClass('closed', 'opened');
						}else if(t.hasClass('closed-hover')){
							t.replaceClass('closed-hover', 'opened-hover');
						}
					}
				};
				if(childUL.isVisible()){
					childUL.slideOut('t', cfg);
				}else{
					var openedSibling =  childUL.parent().parent().child('>li > ul{display!=none}');
					if(openedSibling){
						openedSibling.slideOut('t', {
							useDisplay: true, 
							easing:'easeNone', 
							duration:.2,
							callback:function(hider){
								var expander = hider.parent().child('>table td > img.expander');
								if(expander.hasClass('opened')){
									expander.replaceClass('opened', 'closed')
								}else if(expander.hasClass('opened-hover')){
									expander.replaceClass('opened-hover', 'closed-hover');
								}
								childUL.slideIn('t', cfg);
							}
						});
					}else{
						childUL.slideIn('t', cfg);
					}
				}
			}).hover(
				function(e, t){
					t = Ext.fly(t);
					if(t.hasClass('opened')){
						t.replaceClass('opened', 'opened-hover');
					}else{
						t.replaceClass('closed', 'closed-hover');
					}
				},
				function(e, t){
					t = Ext.fly(t);
					if(t.hasClass('opened-hover')){
						t.replaceClass('opened-hover', 'opened');
					}else{
						t.replaceClass('closed-hover', 'closed');
					}
				}
			);
			
		}else{
			delete(treeExpanders);
		}
	}
	// captcha image loader
	if(Ext.fly('captchaImg')){
		WSPCaptcha();
	}
	// print hight-slide window control event
	hs.Expander.prototype.onAfterExpand = function (sender) {
	   if(sender.headingText == 'Print'){
			(
				function(){
					window.frames[sender.iframe.name].focus();
					window.frames[sender.iframe.name].print();
					sender.close();
				}
			).defer(500);
	   }
	}
});
