var globalhash = '';
function _playerAdd(anchor) {
    var url = anchor.href;
    var code = '<object type="application/x-shockwave-flash" data="http://link.we-link.co.uk/includes/player/musicplayer_f6.swf?song_url=' + url +'&amp;b_bgcolor=ffffff&amp;b_fgcolor=000000&amp;b_colors=0000ff,0000ff,ff0000,ff0000&buttons=http://link.we-link.co.uk/includes/player/load.swf,http://link.we-link.co.uk/includes/player/play.swf,http://link.we-link.co.uk/includes/player/stop.swf,http://link.we-link.co.uk/includes/player/error.swf" width="14" height="14">';
    var code = code + '<param name="movie" value="http://link.we-link.co.uk/includes/player/musicplayer.swf?song_url=' + url +'&amp;b_bgcolor=ffffff&amp;b_fgcolor=000000&amp;b_colors=0000ff,0000ff,ff0000,ff0000&amp;buttons=http://link.we-link.co.uk/includes/player/load.swf,http://link.we-link.co.uk/includes/player/play.swf,http://link.we-link.co.uk/includes/player/stop.swf,http://link.we-link.co.uk/includes/player/error.swf" />';
    var code = code + '</object>';
    anchor.parentNode.innerHTML = code +' '+ anchor.parentNode.innerHTML;
}

String.prototype.trim = function() {
    return this.replace(/^\s+|\s+$/g, '');
};

var deleted = false;
function deleteBookmark(ele, input){
	$(ele).html("<span>Are you sure? <a href=\"#\" onclick=\"deleteConfirmed(this, " + input + ", \'\'); return false;\">Yes</a> - <a href=\"#\" onclick=\"deleteCancelled(" + input + "); return false;\">No</a></span>");
}

function deleteCancelled(input) {
    $('#Del' + input).html("<a href=\"#\" onclick=\"deleteBookmark(this, "+input+"); return false;\">Delete</a>");
    return false;
}

function deleteConfirmed(ele, input, response) {
    if (deleted == false) {
        deleted = ele.parentNode.parentNode.parentNode.parentNode;
    }
    var post = deleted;
    post.className = 'xfolkentry deleted';
    if (response != '') {
        deleted = false;
    } else {
        loadXMLDoc('http://link.we-link.co.uk/ajaxDelete.php?id=' + input);
        $('#bId' + input).hide("slow");
    }
}

function previousElement(ele) {
    ele = ele.previousSibling;
    while (ele.nodeType != 1) {
        ele = ele.previousSibling;
    }
    return ele;
}

function isAvailable(input, response){
    var usernameField = document.getElementById("username");
    var username = usernameField.value;
    username = username.toLowerCase();
    username = username.trim();
    var availability = document.getElementById("availability");
    if (username != '') {
        usernameField.style.backgroundImage = 'url(http://link.we-link.co.uk/loading.gif)';
        if (response != '') {
            usernameField.style.backgroundImage = 'none';
            if (response == 'true') {
                availability.className = 'available';
                availability.innerHTML = 'Available';
            } else {
                availability.className = 'not-available';
                availability.innerHTML = 'Not Available';
            }
        } else {
            loadXMLDoc('http://link.we-link.co.uk/ajaxIsAvailable.php?username=' + username);
        }
    }
}

function useAddress(ele) {
    var address = ele.value;
    if (address != '') {
        if (address.indexOf(':') < 0) {
            address = 'http:\/\/' + address;
        }
        getTitle(address, null);
        ele.value = address;
    }
}

function getTitle(input, response){
    var title = document.getElementById('titleField');
    if (title.value == '') {
        title.style.backgroundImage = 'url(http://link.we-link.co.uk/loading.gif)';
        if (response != null) {
            title.style.backgroundImage = 'none';
            title.value = response;
        } else if (input.indexOf('http') > -1) {
            loadXMLDoc('http://link.we-link.co.uk/ajaxGetTitle.php?url=' + input);
        } else {
            return false;
        }
    }
}

var xmlhttp;
function loadXMLDoc(url) {
    // Native
    if (window.XMLHttpRequest) {
        xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = processStateChange;
        xmlhttp.open("GET", url, true);
        xmlhttp.send(null);
    // ActiveX
    } else if (window.ActiveXObject) {
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        if (xmlhttp) {
            xmlhttp.onreadystatechange = processStateChange;
            xmlhttp.open("GET", url, true);
            xmlhttp.send(null);
        }
    }
}

function processStateChange() {
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
        response = xmlhttp.responseXML.documentElement;
        //method = response.getElementsByTagName('method')[0].firstChild.data;
        //result = response.getElementsByTagName('result')[0].firstChild.data;
        //eval(method + '(\'\', result)');
    }
}

function playerLoad() {
    var anchors = document.getElementsByTagName('a');
    var anchors_length = anchors.length;
    for (var i = 0; i < anchors_length; i++) {
        if (anchors[i].className == 'taggedlink' && anchors[i].href.match(/\.mp3$/i)) {
            _playerAdd(anchors[i]);
        }
    }
}

function cursorHand(){
    document.body.style.cursor = "hand";
}

function cursorDefault(){
    document.body.style.cursor = 'default';
}

function rateConfirmed(hash, tag, response) {
    if(hash !== '')
        globalhash = hash;
        var img = document.getElementById('bad'+globalhash);
    if (response != '') {
        img.innerHTML = '<img src="http://link.we-link.co.uk/images/thumbdown-fade.gif" alt="bad" id="bad" />';
        img.onMouseOver = '';
        img.onMouseOut = '';
        img.style.width = '20px;';
        img.className = 'bad badfade';
    } else {
        loadXMLDoc('http://link.we-link.co.uk/ajaxratebad.php?hash=' + hash + '&tag=' + tag);
        location.reload(true);
    }
}

function newpage (page, sort, user, cat, thumbs) {
	//check if the page has been loaded before
    if (window.XMLHttpRequest) {
        oXmlhttp = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        oXmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    oXmlhttp.open('POST','http://link.we-link.co.uk/ajaxNewPage.php?page='+page+'&user='+user+'&cat='+cat+'&sort='+sort+'&thumbs='+thumbs);
    oXmlhttp.onreadystatechange=function() {
        if (oXmlhttp.readyState==4 && oXmlhttp.status == 200) {
            document.getElementById('bookmarkpage').innerHTML = oXmlhttp.responseText;
        }
    }
    oXmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    oXmlhttp.send (null);
}