/**
 * A Siten hasznlt style funkciok
 *
 * @package    mvo
 * @subpackage site
 * @author     Szijrt Tams ( szicsu ) <szicsu@jquery.hu>
 * @version    SVN: $Id: site.style.js 566 2011-10-04 09:46:49Z  $
 */
 if( typeof Site != 'object' ){
	Site = {};
 }
 
 Site.Style = new function(){
	var self = this;
	
	/**
	 *
	 */
	this.init = function(){
		window.alert_old = window.alert;
		window.alert = self.alertDialog;
		
		window.confirm_old = window.confirm;
		window.confirm = self.confirmDialog;
		
		/*
		window.loading_old = window.loading;
		window.loading = self.loadingDialog;
		*/
		
		window.info = self.infoDialog;
	}
	
	/**
	 * alertDialog function
	 * az alert Ablak kicsit szebben
	 * 
	 * @param string msg
	 * @return string
	 */
	this.alertDialog = function( msg, callBack ){
		
		dialogManager.open({
			title: __('Alert'),
			text: self.getTemplate( {text:msg, buttonCLOSE: __('Close')}, 'alert')
		}, callBack);
	}
	
	/**
	 * infoDialog function
	 * az info ablak
	 * 
	 * @param string msg
	 * @return string
	 */
	this.infoDialog = function( msg, callBack ){
		
		dialogManager.open({
			title: __('Info'),
			text: self.getTemplate( {text:msg, buttonCLOSE: __('Close')}, 'info')
		}, callBack);
		
	}
	
	/**
	 * loadingDialog function
	 * az info ablak
	 * 
	 * @param string msg
	 * @return string
	 */
	this.loadingDialog = function( msg, callBack ){
		
		dialogManager.open({
			title: __('Loading'),
			text: self.getTemplate( {text:msg, buttonCLOSE: __('Close')}, 'loading')
		}, callBack);
		
	}
	
	/**
	 * confirmDialog function
	 * az info ablak
	 * 
	 * @param string text
	 * @param function callBack
	 * @param mixed callBackParams
	 * @return string
	 */
	this.confirmDialog = function( msg, callBack, callBackParams  ){
		
		dialogManager.open({
			title: __('Confirm'),
			text: self.getTemplate( {text:msg, buttonCLOSE: __('Close'), buttonOK: __('OK')}, 'confirm')
		})
		.find('.confirmOk').bind('click', function(){
			
			if( typeof callBack == 'function'){
				callBack( callBackParams );
			}
			
			return false;
		});
	} 
	
	/**
	 *
	 */
	this.removeDialog = function(){
		dialogManager.close();
	}
	
	
	/**
	 * getTemplate function 
	 * visszaadj a templatet
	 *
	 * @param mixed ( null | object ) data a templatebe az adatok
	 * @param string template a template neve
	 * @access protected
	 * @return string
	 */
	this.getTemplate = function( data , template ){
	
		if( typeof data != 'object' ){
			data = {};
		}
		
		switch( template ){
			
			case 'alert':
				var arr = new Array(
					'<img src="/images/icon/bubbles_alert_icon.gif" alt="Alert" class="alert" />',
					'<p class="alert">{text}</p>',
					'<div class="clr">&nbsp;</div>',
					'<input type="button" class="button button_bezar '+ dialogManager.closeClass +'" value="{buttonCLOSE}" />'
				);
			break;
			case 'info':
				var arr = new Array(
					'<p class="info">{text}</p>',
					'<div class="clr">&nbsp;</div>',
					'<input type="button" class="button button_bezar '+ dialogManager.closeClass +'" value="{buttonCLOSE}" />'
				);
			break;
			case 'loading':
				var arr = new Array(
					'<img src="/images/icon/bubbles_alert_icon.gif" alt="Loading" class="loading" />',
					'<p class="loading">{text}</p>',
					'<div class="clr">&nbsp;</div>',
					'<input type="button" class="button button_bezar '+ dialogManager.closeClass +'" value="{buttonCLOSE}" />'
				);
			break;
			case 'confirm':
				var arr = new Array(
					'<img src="/images/icon/bubbles_confirm_icon.gif" alt="Confirm" class="confirm" />',
					'<p class="confirm">{text}</p>',
					'<div class="clr">&nbsp;</div>',
					'<div class="confirm">',
						'<a href="#" class="button button_ok2 confirmOk">{buttonOK}<span class="fir">&nbsp;</span></a>',
						'<input type="button" class="button button_bezar '+ dialogManager.closeClass +'" value="{buttonCLOSE}" />',
					'</div>'
				);
			break;
		} 
		
		return  $.template( arr.join('') ).apply( data ) ;	
	}
}

$(document).ready(function(){

	/* linkek uj ablakba */
	$('a[href^="http://"]:not([target="_top"])').each( function() { $(this).attr('target', '_blank'); });

	if( $.browser.msie && parseInt($.browser.version) == 6 ){
		/* IE 6 - png fix */
		DD_belatedPNG.fix('.png');

		/* IE6 - menu hover hack */
		$('#header_menu_left li').hover(
			function(){ $(this).find('ul').show() },
			function(){ $(this).find('ul').hide() }
		)

		/* IE6 - class az active menunek */
		$('#header_menu_left li').hover(
			function(){ $(this).find('ul').addClass('active') },
			function(){ $(this).find('ul').removeClass('active') }
		)

	}

	/* Legnepszerubb cikkek fulek */
	$('#lnc_24_button a').click (
		function(){
			$('#lnc_24_button').addClass('active');
			$('#lnc_7_button').removeClass();
			$('.lnc_7').hide();
			$('.lnc_24').show();
			return false;
		}
    )
	$('#lnc_7_button a').click (
		function(){
			$('#lnc_7_button').addClass('active');
			$('#lnc_24_button').removeClass();
			$('.lnc_24').hide();
			$('.lnc_7').show();
			return false;
		}
    )

	/* Nyiton a lapozo */
        $('#jcarousel-multimediatar').jcarousel();

	/* toolbox szovegnagyito */
	$('#tb_03 a').click (
		function(){
			$('#JSarticle_box').addClass('bigfont');
			$('#tb_03').hide();
			$('#tb_04').show();
			return false;
		}
    )
	$('#tb_04 a').click (
		function(){
			$('#JSarticle_box').removeClass();
			$('#JSarticle_box').addClass('article_box');
			$('#tb_03').show();
			$('#tb_04').hide();
			return false;
		}
    )

	/* event text max char */
	function limitChars(textid, limit, infodiv) {
		var text = $('#'+textid).val();
		var textlength = text.length;
		if(textlength > limit) {
			$('#' + infodiv).html('0');
			$('#'+textid).val(text.substr(0,limit));
			return false;
		} else {
			$('#' + infodiv).html((limit - textlength));
			return true;
		}
	}
	$(function(){
		$('#event_lead').keyup(function(){
			limitChars('event_lead', 200, 'charlimitinfo');
		})
	});

	/* article feed by slug */
	$('.article_feed_by_slug_link a').hover(
		function(){ $('.article_feed_by_slug_qr').show(); },
		function(){ $('.article_feed_by_slug_qr').hide(); }
	)

	/* IE zindex gond megoldasa */
	$(function() {
		var zIndexNumber = 1000;
		$('div').each(function() {
			$(this).css('zIndex', zIndexNumber);
			zIndexNumber -= 10;
		});
	});

	/* adverticum banner */
	window.onGoa3Invocation = function( response ) { if ( response.length > 0) {
		for (i=0; i<response.length; i++) {
			 $('#zone'+response[i].zone).parent().css('display', 'block');
		}
	}};

	/* konyvajanlo head */
	$('.SIDEBOX_konyvajanlo h2 a').click (
		function(){
			return false;
		}
    )
	/* thome multimedia */
	$('.MBOX_multimediatar').append(
		'<a href="http://www.t-home.hu/" class="hiddenlink" target="_blank" title="T-Home" style="display:none;">T-Home</a>'
	);

});

