/**
 * A Siten hasznlt style funkciok
 *
 * @package    mvo
 * @subpackage site
 * @author     Szijrt Tams ( szicsu ) <szicsu@jquery.hu>
 * @version    SVN: $Id: $
 */
 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(){

	/* header toolbox scroll down */
	$('#ht_03 a#ht_03_link').click (
		function(){
			$("#ht_03 ul").slideDown('3000');
			return false;
		}
    )

	$(!'#ht_03 a#ht_03_link').click (
		function(){
			$("#ht_03 ul").slideUp('3000');
		}
    )

	/* Nyiton a lapozo */
    $('#jcarousel-bigbox').jcarousel();

	/* form select skinezes */
	$('#category_select').styledSelect();

	/* store blank */
	$('li#hm_08 a').each( function() { $(this).attr('target', '_blank'); });

});

/* Rolunk icon fade-elese */
function fadeIn(target){
	$(target).fadeTo('slow', 1);
	return false;
}
function fadeOut(target){
	$(target).fadeTo('slow', 0);
	return false;
}