﻿$(document).ready(function(){    
    var query = window.location.search.substring(1);
    if(query.indexOf('state') != -1){
        var params = query.split('&');
        for(var i = 0; i < params.length; i++){
            var key = params[i].split('=')[0];
            var value = params[i].split('=')[1];
            if(key == 'state'){
                var stateVars = value.split(':');  
                var menuState = new MenuState(stateVars[0],stateVars[1],stateVars[2]); 
                var pageNum = parseInt(menuState.pageNumber);
                var activePage = $('.pagination-link')[pageNum - 1];
                activePage.className += ' selected-page';
                showPage(pageNum);
                $('#sortBy').val(menuState.sortBy);
                showSelectedList(menuState.sortBy);
                if(menuState.sortBy == 'category'){                    
                    var parentId = $('#module-by-category-' + menuState.selectedModule).parent()[0].id;
                    var category = parentId.replace('-module-list','');
                    expandCategory(category);
                }
            }
        }               
    } else {
        var firstPage = $('.pagination-link')[0]
        firstPage.className += ' selected-page';
        showPage(1);
        $('#sortBy').val('number');              
    }
    
    if($('.pagination-link').length == 1){
        $('.pagination-container').hide();
    }
    
//    if(isIE6()){
//        $('.category-module-list').addClass('category-module-list-ie6');
//        $('.category-module-list-ie6').removeClass('category-module-list');
//    }
});

function showPage(pageNumber){
    $('.list-title').hide();
    $('.page-' + pageNumber).show();
    $('.pagination-link').removeClass('selected-page');
    $('#pagination-link-' + pageNumber).addClass('selected-page');

    return false;
}

function showSelectedList(value){
    hideAllLists();
    var divId = 'sorted-by-' + value;
    $('#' + divId).show();
    showPage(1);
    if($('.pagination-link').length == 1 || value == 'category'){
        $('.pagination-container').hide();
    } else {
        $('.pagination-container').show();        
    }
    
    if(value != 'category'){
        collapseAllCategories();
    }
}

function hideAllLists(){
    $('.module-list').hide();
}

function showModule(moduleNum,link){
    var address = document.location.href;
    if(address.indexOf('/modules') != -1){
        $('.module-container').hide();
        $('#module-' + moduleNum).show();
        highlightSelectedModule(moduleNum);
        $('#ctl00_ContentPlaceHolder1_moduleH1').html('Module Detail:');
        return false;
    } else {
        var menuState = getMenuState(moduleNum);
        link.href += '?' + menuState.getQueryString();
        return true;
    }
}

function highlightSelectedModule(moduleId){
    $('.list-title').removeClass('selected-module-title');
    $('#module-by-title-' + moduleId).addClass('selected-module-title');
    $('#module-by-number-' + moduleId).addClass('selected-module-title');
    $('#module-by-category-' + moduleId).addClass('selected-module-title');
    
    $('.active-icon').hide();
//    $('.inactive-icon').show();
//    $('#by-category-inactive-' + moduleId).hide();
    $('#by-category-active-' + moduleId).show();
//    $('#by-title-inactive-' + moduleId).hide();
    $('#by-title-active-' + moduleId).show();
//    $('#by-number-inactive-' + moduleId).hide();
    $('#by-number-active-' + moduleId).show();
} 


function expandCategory(category){
    if($('.' + category + '-expanded').length > 0){
        return collapseCategory(category);
    } else {
        var icon = $('#' + category + '-category-icon')[0];
        icon.src = '/images/common/green-arrow-btn.gif';
        icon.className = category + '-expanded';
        $('#' + category + '-module-list').show();
        $('#' + category + '-module-list div').show();        
        return false;
    }
}

function collapseCategory(category){
    var icon = $('#' + category + '-category-icon')[0];
    if(icon){
        icon.src = '/images/common/green-arrow-btn.gif';
        icon.className = 'unexpanded-icon';
        $('#' + category + '-module-list').hide();
        $('#' + category + '-module-list div').hide();
        $('#' + category + '-category-icon').ifixpng();
    }
    return false;
}

function collapseAllCategories(){
    collapseCategory('general');
    collapseCategory('pregnancy');
    collapseCategory('infant');
    collapseCategory('toddler');
    collapseCategory('childhood');
    collapseCategory('adolescent');
}

function getMenuState(moduleNum){    
    var selectedPage = $('.selected-page .page-link')[0].id;
    selectedPage = selectedPage.replace('page-','');
    
    return new MenuState($('#sortBy').val(), selectedPage, moduleNum);
}

function MenuState(sortBy,pageNum,selectedModuleId){
    this.sortBy = sortBy,
    this.pageNumber = pageNum,
    this.selectedModule = selectedModuleId,
    this.getQueryString = function () {
        return 'state=' + this.sortBy + ':' + this.pageNumber + ':' + this.selectedModule;
    }
}

String.prototype.trim = function() { return this.replace(/^\s+|\s+$/, ''); };