var $j = jQuery.noConflict();
var $ = {};
var first_result = 1;

jQuery(document).ready(function() {	
		$j.history.init(pageload);
	});
	
function pageload(hash)
    {	
		if(hash)
		{
		    hash_array = hash.split("/");
            if(hash_array.length == 2)
            {
                var page = hash_array[0];         
                var res_type = hash_array[1];
                all_tag(page, res_type);
				if(first_result == 1)
				{
					if(res_type == "video")
					{
						all_tag(0, "image");
					}
					else
					{
						all_tag(0, "video");
					}
				}				              
            }
            else
            {
                all_tag(0, "video");
				all_tag(0, "image");
            }		
		}
		else
		{			
				all_tag(0, "video");
				all_tag(0, "image");	
		}
		
		first_result = 0;
	}	
	
function all_tag(page,type)
{
	jQuery.ajax({type: "GET",cashe:true,url: "../tags_ajax.php",data: "tag="+parent.tag+"&type="+type+"&page="+page,
							success: function(content)
							{
								if(content == "login_error")
								{
									window.location = "../signup.php?next=video&add="+base64_encode("#"+page+"/"+type);
								}
								else if(content == "email_confirm_no")
								{
									window.location = "confirm_email.php";
								}
								else if(content == "email_confirm_off")
								{
									window.location = "confirm_email.php?flag=off";
								}
								else if(content == "subscriber_error")
								{
									window.location = "renew_account.php";
								}
								else
								{								
									if(type == "video")
									{
										jQuery("#gallery_video").html(content);
									}
									else if(type == "image")
									{
										jQuery("#gallery_img").html(content);
									}
									
									if(type == "video")
									{
										jQuery("#gallery_video").animate({opacity: "1.0"}, 600);
									}
									else if(type == "image")
									{
										jQuery("#gallery_img").animate({opacity: "1.0"}, 600);
									}
								}																				
		   					},
		   					beforeSend:function()
							{
								if(type == "video")
								{
									jQuery("#gallery_video").animate({opacity: "0.0"}, 400);
								}
								else if(type == "image")
								{
									jQuery("#gallery_img").animate({opacity: "0.0"}, 400);
								}			     				
						 	},
		   					complete:function()
							{
			     				
		   					}
							}); 
}	

function base64_encode( data ) {    // Encodes data with MIME base64
    // 
    // +   original by: Tyler Akins (http://rumkin.com)
    // +   improved by: Bayron Guevara
 
    var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
    var o1, o2, o3, h1, h2, h3, h4, bits, i=0, enc='';
 
    do { // pack three octets into four hexets
        o1 = data.charCodeAt(i++);
        o2 = data.charCodeAt(i++);
        o3 = data.charCodeAt(i++);
 
        bits = o1<<16 | o2<<8 | o3;
 
        h1 = bits>>18 & 0x3f;
        h2 = bits>>12 & 0x3f;
        h3 = bits>>6 & 0x3f;
        h4 = bits & 0x3f;
 
        // use hexets to index into b64, and append result to encoded string
        enc += b64.charAt(h1) + b64.charAt(h2) + b64.charAt(h3) + b64.charAt(h4);
    } while (i < data.length);
 
    switch( data.length % 3 ){
        case 1:
            enc = enc.slice(0, -2) + '==';
        break;
        case 2:
            enc = enc.slice(0, -1) + '=';
        break;
    }
 
    return enc;
}
