var widgetObject = function(){
    //type, page, name, item_count
    var _widgetArray = new Array();
    this.max_pages = 5;
    this.set_params = function(which,attr,val){
        if(!eval('this.' + which)){
        		eval('this.' + which + '= new Object()');
        		_widgetArray.push(which)
        	}
        	eval('this.' + which + '.' + attr + '=' + '"' + val + '"');
         }
      //get object params  
      this.get_params = function(which,attr){
      	return(eval('this.' + which + '.' + attr));
    };
    //show object params
    this.show_object_params = function(obj) {
	  var str='';
	  for(var prop in obj){
	    str += prop + " : "+ obj[prop] + "\n";
	   }
	 
	   return(str);
	};
	//show widget params
    this.show_widget_params = function() {
	  var str='';
	  for(var i in _widgetArray){
		  for(var prop in eval('this.' + _widgetArray[i])){
		    str += prop + " : "+ eval('this.' + _widgetArray[i] + '.' + prop) + "\n";
		   }
		   str += "\n   --------------------------   \n";
	  }
	   return(str);
	};
	this.create_widget_nav = function(){
		for(var i in _widgetArray){
		 		var _id = _widgetArray[i];
		 		$("a[id='" + _id + "_previous_page']").each(function(){
		 				$(this).bind('click',_id,nav_previous);
		 		})
		 		$("a[id='" + _id + "_next_page']").each(function(){
		 				$(this).bind('click',_id,nav_next);
		 		})
		 		
		 		//$('#' + _id + '_previous_page').bind('click',_id,nav_previous);
				//$('#' + _id + '_next_page').bind('click',_id,nav_next);
		 		
		 }
		return false;
	};//emds create click
	
	this.remove_widget_nav = function(which){
		
	};
	        
}; 



nav_next = function(which){
		id = which.data;
		if(wo.get_params(id,'page') < wo.max_pages){
	 	 	_page = wo.get_params(id,'page');
	 	 	_page++;
	 	 	wo.set_params(id, 'page',_page);
	 	 	update_widget(id);
	 	 	
		 }
	};
nav_previous = function(which){
		id = which.data;
		if(wo.get_params(id,'page') > 1){
			_page = wo.get_params(id,'page');
	 	 	_page--;
	 	 	wo.set_params(id, 'page',_page);
			update_widget(id);
				
		 }
		
	};
update_widget = function(which){
	var min_height = (wo.get_params(which,'item_count') * 65) + (wo.get_params(which,'item_count') - 1);
		$.ajax({
			type 	: 	'GET',
			url		:	'/ajax_widget_items.php',
			dataType:	'html',
			data	:	eval('wo.' + which),
			beforeSend:function(){
						$('#' + which + '_widgets_container').html('<div class="progress"><div style="min-height:' + min_height + 'px;"><img width="100%" style="margin: 50% 0px 0px 0px;" src="' + wo.get_params(which, 'images_path') + 'progress.gif"/></div></div>');
						}, //
			success	: function(){},
			complete : function(data){
				$('#' + which + '_widgets_container').html(data.responseText);
				process_playlist_or_mp3_links('#' + which + '_widgets_container');
			}
			 
		});
		//has a footer add page # of total
		 if($("a[id='" + which + "_previous_page']").length == 2){
		 	$('#' + which + '_widgets_container').next("div[id='widget_product_title_vertical']").find("span[id='widget_footer_nav']").html("Page " + wo.get_params(which,'page') + " of " + wo.max_pages);
		 }
}

var wo = new widgetObject();


$(document).ready(function(){
	//create ajax navigation event listeners
	wo.create_widget_nav();
	
})



