var Paginator =
{
    item : null,
	pages : new Array(),
	current_page  : 1,
	current_video : null,
	request_url : '',
	parent_dom  : '',
	dom_prefix  : 'page_',
    dom_paginator:'paginacion',   
    modal:'modal',

	filter  : function(item) { var regexp = new RegExp(Paginator.dom_prefix); return (item.id.match(regexp)); },
	
	
	get_page : function() { return '/page/'+ Paginator.current_page; },
	get_link : function(item) { 
                                if(item){
                                    Paginator.item = item;
                                    return item.href;
                                }
                                else{
                                    return Paginator.request_url + Paginator.get_page(); 
                                }
                               },
    
    
    set_page : function(item) {
								if ('next' == item) { Paginator.current_page ++; }
								if ('prev' == item) { Paginator.current_page --; }
								if ( !isNaN(item) ) { Paginator.current_page = item; }
							  },
    load : function(item) {
							if (item)
                            {
                                Paginator.set_page( item.id.split(Paginator.dom_prefix)[1] );
                            };
                            if(Paginator.modal == 'modal')
                            {
                                $("#"+Paginator.parent_dom).dialog('open');
                            };
                            $('#'+Paginator.parent_dom).ajaxStart( 
                            function (){ 
                                $("#"+Paginator.parent_dom).html(Paginator.get_image_preload()); 
                            });
							$('#'+Paginator.parent_dom).load(
                                    Paginator.get_link(item), 
                                    '', 
                                    function(){
                                        Paginator.init(); 
                                    });
						  },
    get_image_preload: function(){
            if(this.image_preload == ''){
               this.image_preload =  '<img src="/styles/default/images/preloading.gif" >';//$('<img>',{ src: '/styles/default/images/preloading.gif' });
            }
            return this.image_preload;
    },
    image_preload:'',
    set_nav : function(item) {
        if (Paginator.filter(item)){
                $('#'+item.id).click( 
                function() { 
                    Paginator.load(this); return false; 
                });
        }
                            },
    setup : function(param) {
                                    Paginator.seter(param);
                                    Paginator.load();
							},
	init : function(param) {
                                    Paginator.get_image_preload();
                                    Paginator.seter(param);
									$('.'+Paginator.dom_paginator+ ' a').each( function(){ Paginator.set_nav(this); } );
							},
    seter: function(param) {
                            if (param)
                                    {
                                        if(param.request_url)
                                            Paginator.request_url = param.request_url;
                                        if(param.parent_dom)
                                            Paginator.parent_dom  = param.parent_dom;
                                        if(param.dom_paginator)
                                            Paginator.dom_paginator  = param.dom_paginator;
                                        if(param.current_page)
                                            Paginator.current_page  = param.current_page;
                                         if(param.modal)
                                         {
                                            Paginator.modal  = param.modal;
                                          }
                                    }
    }
}

