var	pager	=
{
		
	load:	function	(obj_id, url, parented)
	{
		if (window.XMLHttpRequest)
		{
			xml_http	=new	XMLHttpRequest	();
		}
		else
		if (window.ActiveXObject)
		{
			xml_http	=new	ActiveXObject	("Microsoft.XMLHTTP");
		}
		else
		{
			return	false;
		}
		
		xml_http.open	('GET', url, true);
		xml_http.onreadystatechange	=function	()
		{
			if (xml_http.readyState	==4)
			{
				pager.loaded	(obj_id, parented, xml_http.responseText);
			}
		}
		
		xml_http.send	(null);
	}
	,loaded:	function	(obj_id, parented, answer)
	{
		if (answer.substr(0,3)	=='OK!')
		{
			var	o	=document.getElementById	(obj_id);
			
			if (parented)
			{
				o	=o.parentNode;
			}
  			
			o.innerHTML	=answer.substr	(3);
			
			$.superbox.refresh();
		}
	}
	
	,clicker: function (obj_id)
	{
		var o = document.getElementById(obj_id);
		
		if (o)
		{
			window.alert(o.click);
		}
		
		return false;
	}
};

var gallery_pager =
{
	show_interval: function (prefix, pic_no, row_start, row_count)
	{
		var rows = Math.floor((pic_no + 3) / 4);
		var row_end = row_start + row_count;
		
		prefix += '_';
		
		if (row_end > rows)
		{
			row_end = rows;
		}
		
		for (var i = row_start; i < row_end; i ++)
		{
			var o = document.getElementById(prefix + i);
			
			o.style.display = 'block';
			
			var imgs = o.getElementsByTagName('img');
			
			var c = imgs.length;
			
			for (j = 0; j < c; j ++)
			{
				var o2 = imgs[j];
				var src = o2.src;
				
				var x = src.lastIndexOf('/');
				
				if (src.substr(x) == '/spin.gif')
				{
					var s = o2.parentNode.href;
					
					if (s.indexOf('/large/') != -1)
					{
						o2.src = s.replace('/large/', '/small/');
					}
					else
					{
						o2.src = s + '&comment_thumbnail=1'
					}
				}
			}
		}
		
		for (i = 0; i < rows; i ++)
		{
			if ((i<row_start) || (i >= row_end))
			{
				var o = document.getElementById(prefix + i);
				
				o.style.display = 'none';
			}
		}
	}
	
	,more: function(prefix, pic_no, page)
	{
		this.show_interval(prefix, pic_no, 0, page * 4 + 4);
		
		var pages = Math.floor((pic_no + 15) / 16);
		
		var o = document.getElementById(prefix + '_console_more');
		if (page < pages - 1)
		{
//			o.onclick = 'gallery_pager.more(\'' + prefix + '\', ' + pic_no + ',' + (page + 1) + ');';
			
			o.onclick = new Function('gallery_pager.more(\'' + prefix + '\', ' + pic_no + ',' + (page + 1) + '); return false;');
		}
		else
		{
			o.style.display = 'none';
		}
	}
	
	,page: function(prefix, pic_no, page)
	{
		this.show_interval(prefix, pic_no, page * 4, 4);
		
		var pages = Math.floor((pic_no + 15) / 16);
		var s = '';
		var link = '<a href="#" onclick="gallery_pager.page(\'' + prefix + '\', ' + pic_no + ',';
		
		for (var i = 0; i < pages; i ++)
		{
			var x1 = i * 16 + 1;
			var x2 = x1 + 15;
			
			if (x2 > pic_no)
			{
				x2 = pic_no;
			}
			
			var s2 = x1 + '-' + x2;
			
			if (i == page)
			{
				s += s2;
			}
			else
			{
				s +=  link + i +'); return false;">' + s2 + '</a>';
			}
			
			s += '&nbsp;&nbsp; ';
		}

		var o = document.getElementById(prefix + '_console_more');
		o.style.display = 'none';
		
		o = document.getElementById(prefix + '_console_all');
		o.style.display = 'none';
		
		o = document.getElementById(prefix + '_console_pages');
		o.innerHTML = s;
	}
};
