﻿function addLoadEvent(func) {
    var oldonload = window.onload;
    if (typeof window.onload != 'function'){
        window.onload = func
    } else {
        window.onload = function() {
            oldonload();
            func();
        }
    }
}

function Left(str, n){
    if (n <= 0)
        return "";
    else if (n > String(str).length)
        return str;
    else
        return String(str).substring(0,n);
}

function Right(str, n){
    if (n <= 0)
        return "";
    else if (n > String(str).length)
        return str;
    else {
        var iLen = String(str).length;
        return String(str).substring(iLen, iLen - n);
    }
}

function switchStylestyle(styleName) {
    $('link[@rel*=style][@title]').each(function(i) {
        this.disabled = true;
        if (this.getAttribute('title') == styleName) this.disabled = false;
    });
    
    createCookie('style', styleName, 365);
}

function createCookie(name,value,days) {
    if(days){
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++){
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}

function eraseCookie(name) {
    createCookie(name,"",-1);
}

$(document).ready(function() {

    $('#intro').innerfade({
        speed: 'slow',
        timeout: 8000,
        type: 'sequence'
    });

    $('#searcharea').corner("round");
    $('#homenavigation li').corner("round");
    $('#pubnavigation li').corner("round");

    $("table").addClass("coloured_background");
    $("table.no_formatting").removeClass("coloured_background");
    $("table tr").removeClass();
    $("table.coloured_background tr:even").addClass("pale_grey");
    $("table.coloured_background tr:odd").addClass("pale_back");

    var c = readCookie('style');

    if (c) switchStylestyle(c);

    function filterPath(string) {
        return string
        .replace(/^\//,'')
        .replace(/(index|default).[a-zA-Z]{3,4}$/,'')
        .replace(/\/$/,'');
    }
  
    $("<ul>").appendTo("#accessoptions")
    $("<li><strong>Change text:</strong></li>").appendTo("#accessoptions ul")
    $("<li><a href=\"#\" rel=\"default\" class=\"styleswitch\"><img src=\"template/textsize-normal.gif\" alt=\"normal size\" /></a></li><li><a href=\"#\" rel=\"large\" class=\"styleswitch\"><img src=\"template/textsize-large.gif\" alt=\"large size\" /></a></li><li><a href=\"#\" rel=\"extralarge\" class=\"styleswitch\"><img src=\"template/textsize-extralarge.gif\" alt=\"extra large size\" /></a></li><!--<li><a href=\"#\" rel=\"highvisibility\" class=\"styleswitch\"><img src=\"template/textsize-highvisibility.gif\" alt=\"high visibility size and colour\" /></a></li>//-->").appendTo("#accessoptions ul")
    $("<li><a href=\"accessibility.htm#textsize\" class=\"small\">(what is this?)</a></li>").appendTo("#accessoptions ul")
    
    $('.styleswitch').click(function(){
        switchStylestyle(this.getAttribute("rel"));
        return false;
    });

});

function prepareLinks() {

    if (!document.getElementById || !document.getElementsByTagName) {
        return;
    }
    
    //var content = document.getElementById("content");
    var links = document.getElementsByTagName("a");
    
    for(var i=0; i<links.length; i++) {
        var str = links[i].getAttribute("href");
        if((Left(str,7)=="http://")||(Left(str,8)=="https://")){
        
            if((str.indexOf("gmpa.gov.uk")==-1)&&(str.indexOf("v-civireddot01.salford.gov.uk")==-1)){
                var checklinks = links[i].getElementsByTagName("img");
                
                if(checklinks.length==0){
                    var addicon = document.createElement("img");
                    addicon.setAttribute("src","template/icon-external-link.gif");
                    addicon.setAttribute("alt","External site");
                    addicon.style.paddingLeft="4px";
                    links[i].appendChild(addicon);
                } else {
                    for(var z=0; z<checklinks.length; z++) {
                        var altText = checklinks[z].getAttribute("alt");
                        altText = altText + " (External site)";
                        checklinks[z].setAttribute("alt",altText);
                    }
                }
            }
        }        

        if((Left(str,7)=="mailto:")||(Left(str,7)=="MAILTO:")){
            links[i].style.paddingLeft="20px";
            links[i].style.backgroundImage="url(template/icon-email-small.gif)";
            links[i].style.backgroundRepeat="no-repeat";
            links[i].style.backgroundPosition="left center";
        }

        if((Right(str,4)==".rtf")||(Right(str,4)==".RTF")){
            var addicon = document.createElement("img");
            addicon.setAttribute("src","template/icon-text.gif");
            addicon.setAttribute("alt","");
            addicon.style.paddingLeft="4px";
            links[i].appendChild(addicon);
        }

        if((Right(str,4)==".doc")||(Right(str,4)==".DOC")){
            var addicon = document.createElement("img");
            addicon.setAttribute("src","template/icon-word.gif");
            addicon.setAttribute("alt","");
            addicon.style.paddingLeft="4px";
            links[i].appendChild(addicon);
        }
    
        if((Right(str,4)==".pdf")||(Right(str,4)==".PDF")){        
            var addicon = document.createElement("img");
            addicon.setAttribute("src","template/icon-acrobat.gif");
            addicon.setAttribute("alt","");
            addicon.style.paddingLeft="4px";
            links[i].appendChild(addicon);
        }
    
        if((Right(str,4)==".xls")||(Right(str,4)==".XLS")){
            var addicon = document.createElement("img");
            addicon.setAttribute("src","template/icon-excel.gif");
            addicon.setAttribute("alt","");
            addicon.style.paddingLeft="4px";
            links[i].appendChild(addicon);
        }
    
        if((Right(str,4)==".ppt")||(Right(str,4)==".PPT")){
            var addicon = document.createElement("img");
            addicon.setAttribute("src","template/icon-powerpoint.gif");
            addicon.setAttribute("alt","");
            addicon.style.paddingLeft="4px";
            links[i].appendChild(addicon);
        }
    
        if((Right(str,4)==".jpg")||(Right(str,4)==".JPG")||(Right(str,4)==".gif")||(Right(str,4)==".GIF")||(Right(str,4)==".png")||(Right(str,4)==".PNG")||(Right(str,4)==".bmp")||(Right(str,4)==".BMP")){
            var addicon = document.createElement("img");
            addicon.setAttribute("src","template/icon-image.gif");
            addicon.setAttribute("alt","");
            addicon.style.paddingLeft="4px";
            links[i].appendChild(addicon);
        }
    
        if((Right(str,4)==".zip")||(Right(str,4)==".ZIP")){
            var addicon = document.createElement("img");
            addicon.setAttribute("src","template/icon-zip.gif");
            addicon.setAttribute("alt","");
            addicon.style.paddingLeft="4px";
            links[i].appendChild(addicon);
        }
        
    }

}

addLoadEvent(prepareLinks);