/////////
// Ajax föllin
/////////
var webBase = "/portfolio/";
var webLang = false;

function ajaxLinks(baseElement)
{
    if(document.getElementById && document.getElementsByTagName)
    {
        var aDocLinks = baseElement.getElementsByTagName("a");
        var _link;
        for(var i = 0; i < aDocLinks.length; i++)
        {
            _link = aDocLinks[i];


            // Menuinn
            if(_link.className.match("linkMenu"))
            {

                _link.onclick = function (e)
                {
                    var imgID = getQueryVar("imgID", this);
                    var albumID = getQueryVar("albumID", this);

					webLang = getQueryVar("l", this);
                    get_thumbs_send(albumID);
                    get_img_send(imgID);
                    get_img_info_send(imgID);
                    setHash(albumID, imgID);
                    return false;
                }
            }

            // Thumbar
            if(_link.className.match("linkPhoto"))
            {
                _link.onclick = function (e)
                {
                    var imgID = getQueryVar("imgID", this);
                    var albumID = getQueryVar("albumID", this);
					webLang = getQueryVar("l", this);
                    get_img_send(imgID);
                    get_img_info_send(imgID);
                    //scrollToThumb(this);
                    scrollToThumb(document.getElementById("thumb_"+imgID));
                    setHash(albumID, imgID);
                    return false;
                }
            }

            if(_link.className.match("linkPhotoRnd"))
            {
                _link.onclick = function (e)
                {
					webLang = getQueryVar("l", this);
                    get_random_send();
                    setHash(0, 0);
                    return false;
                }
            }
            
            if(_link.className.match("linkSMS"))
            {
                _link.onclick = function (e)
                {
                    sms();
                    return false;
                }
            }
        }
    }
}
// Sækja breytu úr tengli
function getQueryVar(_var, _link)
{
	var href = _link.getAttribute("href", 2).toLowerCase().indexOf("http") == 0 ? _link.getAttribute("href", 2).substring(7) :  _link.getAttribute("href", 2);
    var variables = href.split("/");

	if(_var == 'l' && variables.length >= 3) return variables[2];
    if(_var == 'imgID' && variables.length >= 5) return variables[4];
	if(_var == 'albumID' && variables.length >= 4) return variables[3];
    return false;
}
/*function getQueryVar(_var, _link)
{
    var link = _link.getAttribute("href", 2).split("?");
    query = link.length == 2 ? link[1] : _link.href;
    var variables = query.split("&");
    for (var i=0;i<variables.length;i++)
    {
        var variable = variables[i].split("=");
        if (variable[0] == _var)
        {
            return variable[1];
        }
    }
    return false;
}*/

// Lesa hash. Keyrt í hleðslu á undan myndum
function checkHash()
{
	// Hash í url: #albumID,imgID
	if(document.location.hash)
	{
		var hash_data = document.location.hash.substring(1);
		if(hash_data.indexOf(';')>-1)
		{
			temp = new Array();
			temp = hash_data.split(';');
			hash_data = temp[1];
		}

		hash_variables = new Array();
		hash_variables = hash_data.split(',');
		//albumID,imgID
		if(hash_variables[0]>0)
		{
			if(hash_variables[1]==0)
				get_album_imgID_send(hash_variables[0]);
			else {
				get_img_send(hash_variables[1]);
				get_img_info_send(hash_variables[1]);
				get_thumbs_send(hash_variables[0],hash_variables[1]);
			}
		} else get_random_send();
	} else {
		if(!isFront)
			scroll_display('block');
	}		
}

// Setja hash svo hægt sé að vísa á myndir með slóð
function setHash(albumID, imgID)
{
	document.location = webBase+"#" + albumID + "," + imgID;
}

// Uppfæra

// Fyrirspurnir almennt
function createRequestObject()
{
    var ro;
    var browser = navigator.appName;
    if(browser == "Microsoft Internet Explorer")
    {
        ro = new ActiveXObject("Microsoft.XMLHTTP");
    } else {
        ro = new XMLHttpRequest();
    }
    return ro;
}

function loading(item)
{
    if(document.getElementById('loading') != null && document.getElementById(item) != null)
    {
        document.getElementById(item).innerHTML = document.getElementById('loading').innerHTML;
    }
}
function clear(item)
{
    if(document.getElementById(item) != null)
	{
		document.getElementById(item).innerHTML = "";
	}
}

// Mynd, senda fyrirspurn
var get_img = createRequestObject();
function get_img_send(imgID,random)
{
	if(get_img.readyState!=1)
	{
		var url;
		loading('photos');
		var url = webBase+'ajax.php?run=img&sub=img';
		if(imgID) url += '&imgID='+imgID;
		if(random) url += '&random=1';
		if(webLang) url += '&l=' + webLang;

		get_img.open('get', url);
		get_img.onreadystatechange = get_img_response;
		get_img.send(null);
		//if(!random) pmv_log(phpmyvisitesSite, phpmyvisitesURL, 'img/img/'+imgID, a_vars);
	}
}

// Mynd, taka við svari
function get_img_response()
{
	if(get_img.readyState == 4)
	{
		var response = get_img.responseText;
		
		links_blur();
		if(document.getElementById('photos') != null)
		{
			document.getElementById('photos').innerHTML = response;
			ajaxLinks(document.getElementById('photos'));
		}
	}
}

// Mynd info, senda fyrirspurn
var get_img_info = createRequestObject();
function get_img_info_send(imgID,random)
{
	if(get_img_info.readyState!=1)
	{
		var url;
		loading('photos_info');
		var url = webBase+'ajax.php?run=img&sub=info';
		if(imgID) url += '&imgID='+imgID;
		if(random) url += '&random=1';
		if(webLang) url += '&l=' + webLang;

		get_img_info.open('get', url, true);
		get_img_info.onreadystatechange = get_img_info_response;
		get_img_info.send(null);
	}
}

// Mynd info, taka við svari
function get_img_info_response()
{
	if(get_img_info.readyState == 4)
	{
		var response = get_img_info.responseText;
		if(get_img_info.status == 200)
		{
			document.getElementById('photos_info').innerHTML = response;
		}
		else
		{
			document.getElementById('photos_info').innerHTML = 'Ajax villa.';
		}
		
		if(document.getElementById('photos_info'))
		{
			ajaxLinks(document.getElementById('photos_info'));
		}
	}
}


// Sýnishorn, senda fyrirspurn
var get_thumbs = createRequestObject();
function get_thumbs_send(albumID,imgID)
{
	scroll_display('block');
	if(get_thumbs.readyState!=1)
	{
		var url;
		scrollTopFast();
		loading('thumbs');
		var url = webBase+'ajax.php?run=img&sub=thumbs&albumID='+albumID;
		if(webLang) url += '&l=' + webLang;

		get_thumbs.open('get', url);
		get_thumbs.onreadystatechange = function() { get_thumbs_response(imgID); }
		get_thumbs.send(null);
	}
}

// Sýnishorn, taka við svari
function get_thumbs_response(imgID)
{
	if(get_thumbs.readyState == 4)
	{
		var response = get_thumbs.responseText;
		document.getElementById('thumbs').innerHTML = response;
		if(document.getElementById('thumbs'))
		{
			ajaxLinks(document.getElementById('thumbs'));
		}
		if(imgID) scrollToThumb(document.getElementById("thumb_"+imgID));
	}
}

// randomID, senda fyrirspurn (mynd á forsíðu)
var get_random = createRequestObject();
function get_random_send(albumID)
{
    scroll_display('none');
	if(get_random.readyState!=1)
	{
		var url;
		loading('photos');
		loading('photos_info');
		var url = webBase+'ajax.php?run=img&sub=randomID';
		if(webLang) url += '&l=' + webLang;

		get_random.open('get', url);
		get_random.onreadystatechange = get_random_response;
		get_random.send(null);
	}
}

// randomID, taka við svari
function get_random_response()
{
	if(get_random.readyState == 4)
	{
		var response = get_random.responseText;
		//Fyrirspurnin skilar imgID|albumID (þ.e. #|#)
		var randomdata = new Array();
		randomdata = response.split('|');
		var imgID=randomdata[0];
		var albumID=randomdata[1];
		//Birta mynd með imgID sem sótt var
		get_img_send(imgID,1);
		//Birta info fyrir mynd
		get_img_info_send(imgID,1);
	}
}


// Valið albúm en engin mynd (gerist bara ef komið er inn á vefinn með gamalli slóð)
var get_album_imgID = createRequestObject();
function get_album_imgID_send(albumID)
{
	scroll_display('block');
	if(get_album_imgID.readyState!=1) get_album_imgID.abort();
	var url;
	loading('photos');
	loading('photos_info');
	loading('thumbs');
	url = webBase+'ajax.php?run=img&sub=album_imgID';
	url += '&albumID='+albumID;
	if(webLang) url += '&l=' + webLang;


	get_album_imgID.open('get', url);
	get_album_imgID.onreadystatechange = get_album_imgID_response;
	get_album_imgID.send(null);
}

// taka við
function get_album_imgID_response()
{
	if(get_album_imgID.readyState == 4)
	{
		var response = get_album_imgID.responseText;
		//Fyrirspurnin skilar imgID|albumID (þ.e. #|#)
		var albumdata = new Array();
		albumdata = response.split('|');
		var imgID=albumdata[0];
		var albumID=albumdata[1];
		//Birta mynd með imgID sem sótt var
		get_img_send(imgID,1);
		get_img_info_send(imgID,1);
		get_thumbs_send(albumID);
	}
}
