/**
 * ComSoc DL Website - Global javascript module. This module is used for 
 * defining various global parameters required for Java Script and Ajax 
 * programming of various pages.
 *
 * @author Veeresh D.
 * @date March 2008
 */

//var ROOT_PROTOCOL = location.protocol ;
var ROOT_URL = "/comsocdl/";
var ROOT_DB_URL = "/comsocdl/";

var myComSocAccessRights;
var loginStatus = false;
var latestSearchResultFunCall = "";

var tempHash;

var historySearchDetails;
var historySearchPages;

var downloadCartList;
var shoppingCartList;

var saveSearchItem = "";
var saveSearchType = "";

var downloadCartUpperLimit;
var global =
{
    initGlobalMembers: function()
    {
        downloadCartList = new Hash();
        shoppingCartList = new Hash();
        historySearchDetails = new Hash();
        historySearchPages = new Hash();   
        tempHash = new Hash(); 
        
        downloadCartUpperLimit = 5;
        
        /* Following are standard acronomy journal and conference types used for MyComSoc module */
        myComSocAccessRights = new Array(16);
        myComSocAccessRights[0] = 'CI';
        
        myComSocAccessRights[1] = 'NI';
        myComSocAccessRights[2] = 'PCI';
        
        myComSocAccessRights[3] = 'COMM';
        myComSocAccessRights[4] = 'COMML';
        myComSocAccessRights[5] = 'SAC';
        myComSocAccessRights[6] = 'TWC';
        myComSocAccessRights[7] = 'NET';
        myComSocAccessRights[8] = 'TNSM';
        
        myComSocAccessRights[9] = 'GLOBECOM';
        myComSocAccessRights[10] = 'ICC';
        myComSocAccessRights[11] = 'IM';
        myComSocAccessRights[12] = 'INFOCOM';
        myComSocAccessRights[13] = 'MILCOM';
        myComSocAccessRights[14] = 'NOMS';
        myComSocAccessRights[15] = 'WCNC';     
        
        global.variables.myComSocUserFont = null;
        global.variables.authorSearchCount = 0;
        //searchResults.setSortByType('relevance');
    },
    
    /*
    Set or persist the paramters for 'Save search' feature
    */
    setSaveSearchParams: function(searchItem, searchType)
    {
        var tempObject = document.getElementById("saveSearchId");
        saveSearchItem = searchItem;
        saveSearchType = searchType;
        /*
        alert("val1= " +document.getElementById("queryResultsDivId").innerHTML.substr(1,3000) );
        //alert("saveSearchItem=" + saveSearchItem + ", saveSearchType=" + saveSearchType); 
        if (tempObject && searchType == "keyword" )
        {
            if ( tempObject.value != "View/Edit Favorites" )
            {
                tempObject.value = "Save Search";
                tempObject.onclick = "searchResults.saveSearch('" + saveSearchItem + "','" + saveSearchType +"')"; //function() { searchResults.saveSearch(); };
            }
        }
        else if (tempObject && searchType == "article" )
        {
            if ( tempObject.value != "View/Edit Favorites" )
            {
                tempObject.value = "Save Article";
                addEvent(tempObject, 'click', "searchResults.saveArticle(" + saveSearchItem + ",'" + saveSearchType +"')");
                //tempObject.onclick = "searchResults.saveArticle(" + saveSearchItem + ",'" + saveSearchType +"')";
                tempObject.onclick = function() { searchResults.saveArticle(saveSearchItem, saveSearchType); };
                //tempObject.onclick = function() { searchResults.saveArticle(saveSearchItem, saveSearchType); };
            }
        }
        else if (tempObject && searchType == "author" )
        {
            if ( tempObject.value != "View/Edit Favorites" )
            {
                tempObject.value = "Save Author";
                tempObject.onclick = "searchResults.saveAuthor('" + saveSearchItem + "','" + saveSearchType +"')";
            }
        }
        else if (tempObject && searchType == "ontologySubject" )
        {
            if ( tempObject.value != "View/Edit Favorites" )
            {
                tempObject.value = "Save Subject";
                tempObject.onclick = "searchResults.saveSubject('" + saveSearchItem + "','" + saveSearchType +"')";
            }
        }
        else if (tempObject && searchType == "ontologyPublication" )
        {
            if ( tempObject.value != "View/Edit Favorites" )
            {
                tempObject.value = "Save Publication";
                tempObject.onclick = "searchResults.savePublication('" + saveSearchItem + "','" + saveSearchType +"')";
            }
        }
        alert("val2= " +document.getElementById("queryResultsDivId").innerHTML.substr(500,3000) );        
        */
    },
    
    /*
    Preloading all necessary images.  It is a lazy loading design pattern
    */
    preLoadImages: function()
    {
	    if (document.images)
        {
            var image_url = new Array();
            image_url[0] = ROOT_URL + "images/myMyComSoc1ViewFavourites.png";
            image_url[1] = ROOT_URL + "images/myMyComSoc2ViewAccessrights.png";
            image_url[2] = ROOT_URL + "images/myMyComSoc4EditLayout.png";
            image_url[3] = ROOT_URL + "images/myMyComSoc4ViewPurchases.png";
            image_url[4] = ROOT_URL + "images/myarticles-authors.gif";
            image_url[5] = ROOT_URL + "images/myarticles-publications.gif";
            image_url[6] = ROOT_URL + "images/myarticles-search.gif";
            image_url[7] = ROOT_URL + "images/myarticles-subjects.gif";
            image_url[8] = ROOT_URL + "images/arrow-down.gif";
            image_url[9] = ROOT_URL + "images/arrow-up.gif";
            image_url[10] = ROOT_URL + "images/mycomsoc/checkbox.gif";
            image_url[11] = ROOT_URL + "images/mycomsoc/checkboxGreyChecked.gif";
            image_url[12] = ROOT_URL + "images/mycomsoc/checkboxOrangeChecked.gif";
            
            image_url[13] = ROOT_URL + "images/panelbg.gif";
            image_url[14] = ROOT_URL + "images/panelbgGray.gif";
            
            image_url[15] = ROOT_URL + "images/alertFailure.gif";
            image_url[16] = ROOT_URL + "images/alertSuccess.gif";
            image_url[17] = ROOT_URL + "images/alertAttention.gif";
            
            image_url[18] = ROOT_URL + "images/html.gif";
            image_url[19] = ROOT_URL + "images/pdf.gif";
            
            image_url[20] = ROOT_URL + "images/download.png";
            
            image_url[21] = ROOT_URL + "images/buttons/bg_button_blue.gif";
            image_url[22] = ROOT_URL + "images/buttons/bg_button_orangedark.gif";
            image_url[23] = ROOT_URL + "images/buttons/bg_button_grey.gif";
            
            image_url[24] = ROOT_URL + "images/shoppingCart/american_express.gif";
            image_url[25] = ROOT_URL + "images/shoppingCart/master_card.gif";
            image_url[26] = ROOT_URL + "images/shoppingCart/visa_card.gif";
            
            for(var i = 0; i < image_url.length; i++) 
            {
                var preload_image_object = new Image();
                preload_image_object.src = image_url[i];
            }
        }
    },
    
    variables: function()
    {
	    /* **************************************************************************
	     * Subclass object gets populated with seperate shopping class.             *
	     * It is object oriented javascript programming by components architecture  *
	     ***************************************************************************/
    }
}

function variables()
{
    var myComSocUserFont;
    var sortSearchBy;
    var browserName;
    var recentSearchType; //keywordSearch, authorSearch, subjectOntologySearch, publicationOntologySearch, advancedSearch
    
    /* Below varaibles are used to download whole issue articles */
    var issueLevelFlag;
    var issueLevelTOCID;
    var authorSearchCount;
}
global.variables = new variables;
