/*
 * @copyright http://brainfit.ru
 * @author Urushev Vladimir (urushev@yandex.ru)
 *
 * name: ajaxsite library v.2 use jQuery Tools (http://flowplayer.org)
 * date: 2011-03-26
 * description: Предназначена для вывода модальных ajax-окон
 */
  
  
jQuery.extend({
	ajaxform: {
		init: function(){
			/*
			 * Формы с классом ajax считаются формами,
			 * которые post-ят данные и получают ответ javascript-ом
			 */

			 jQuery('form.ajax').ajaxForm({
				type: 'post',
                async: false,
				dataType: 'script',
				beforeSubmit: function(){
					//jQuery.ajaxsite.show();
				}
			});
		}
	},
	
	
	
	ajaxsite: {
        create: function(){
            jQuery('<div id="ajaxsitebox">   <div><h1>&nbsp;</h1><p>Подождите, идет загрузка...</p></div>    </div>').insertAfter('body');
        },
        
		init: function() {
            jQuery(".ajaxsite[ajaxsite_init!=1]")
				.each(function(index) {
					if (! jQuery(this).attr('url'))
						jQuery(this)
							.attr('url', jQuery(this).attr('href'));
                            
                    //console.log('Проинициирован для ссылки ' + jQuery(this).attr('url'))
                            
                    jQuery(this)
                        .attr('href', 'javascript:void(0)')
        				.die('click')
        				.click(function(){
        				    //console.log('Загружаем ' + jQuery(this).attr('url'));
        					jQuery.ajaxsite.load( jQuery(this).attr('url') );
        			    }).attr('ajaxsite_init', '1');
				});
                
            if ( typeof  jQuery("#ajaxsitebox").data('overlay') != 'object'  ){
                //Ещё не создан. Вставляем данные, создаем и показываем оверлей
                jQuery("#ajaxsitebox").overlay({
                    fixed: false,
                    mask: {
                      color: '#000', // you might also consider a "transparent" color for the mask
                      loadSpeed: 200,
                      opacity: 0.2 // very transparent
            	   },
                
                    closeOnClick: true,
                    closeOnEsc: true,
                    load: false
                });
            }
				
                
		},
        
		load: function(target_url, callback){
            jQuery.ajaxsite.show(target_url, true, callback);
            
            return;
            jQuery.get(target_url, function(data){
                jQuery.ajaxsite.show(data);
                
                if (callback)
                    callback.call();
            });
		},
        
        _initOverlay: function(callback){
             setTimeout(function(){
                jQuery("#ajaxsitebox").data('overlay').load();
                
                if (callback) callback.call(); 
            
            
                jQuery(".modal-close", "#ajaxsitebox").unbind().click(function(){
                    jQuery("#ajaxsitebox").data("overlay").close();
                });
            }, jQuery.fx.off ? 1 : 350);
        },
        
        show: function(target_or_text, thisisurl, callback){
            var waitText = '<h1>Подождите...</h1><p></p>';
            
            if (! target_or_text)
                target_or_text = waitText;
                
            if ( typeof  jQuery("#ajaxsitebox").data('overlay') == 'object'  )
                jQuery("#ajaxsitebox").data("overlay").close();
            
            var wrap = jQuery("#ajaxsitebox");
            
            if (thisisurl){
                jQuery.get(target_or_text, function(data){
                    wrap.html(data);
                    
                    jQuery.ajaxsite.init();
                    jQuery.ajaxform.init();
                    
                    jQuery.ajaxsite._initOverlay(callback);
                });
            }else{
                wrap.html(target_or_text);
                
                jQuery.ajaxsite.init();
                jQuery.ajaxform.init();
                
                jQuery.ajaxsite._initOverlay(callback);
            }
            
                
              
            
            
        }
	}
});




jQuery(function(){
    jQuery.ajaxsite.create();
    jQuery.ajaxsite.init();
    jQuery.ajaxform.init();
});



function ajaxsiteCorrector(){	
	return;
}

function ajaxsiteInit(text){
	jQuery.ajaxsite.show('<h1>Журнал «Наша Психология»</h1><div style="padding:10px;"><p>' + (text ? text : 'Подождите...') + '</p><p></p><p align="right"><a class="yellowButton modal-close biglink" href="javascript:void(0)">Закрыть сообщение</a>&nbsp;</div>');
	
}

function ajaxsiteLoad(target_url){
	jQuery.ajaxsite.load(target_url);
}


function ajaxsiteClose(){
	return;
}

