﻿    var imagestartPoint = 0;
    var videostartPoint = 0;
    var noDisplayClass = 'noDisplay';
    var currentClass = 'current';
    var imagemaxPages;
    var videomaxPages;
    var numberOfpages = 5; 
    
    function clickMediaLeft(mediaType) {
    
        if(mediaType =='image')
        {
            imagemaxPages = document.getElementById(mediaType + "RecordsCount").value; 
            imagestartPoint--;
            
            //set the next element to show
           var showElement = document.getElementById(mediaType + 'Number'+imagestartPoint);
           if(hasClass(showElement,noDisplayClass))
              removeClassName(showElement,noDisplayClass); 
                  
            //set the current element to hide
            var hideElement = document.getElementById(mediaType + 'Number' + (imagestartPoint + numberOfpages));
            if(!hasClass(hideElement,noDisplayClass))
              addClass(hideElement,noDisplayClass); 
              
        }
        else
        {
            videomaxPages = document.getElementById(mediaType + "RecordsCount").value; 
            
            videostartPoint--;
            
            //set the next element to show
            var showElement = document.getElementById(mediaType + 'Number'+(videostartPoint));
            if(hasClass(showElement,noDisplayClass))
              removeClassName(showElement,noDisplayClass); 
                  
            //set the current element to hide
            var hideElement = document.getElementById(mediaType + 'Number' + (videostartPoint + numberOfpages));
            if(!hasClass(hideElement,noDisplayClass))
              addClass(hideElement,noDisplayClass); 
        }
        
        showMediaArrows(mediaType)
    }
    
    
    function clickMediaRight(mediaType){
    
       if(mediaType =='image')
       {
            
            imagemaxPages = document.getElementById(mediaType + "RecordsCount").value; 
            
            //set the next element to show
           var showElement = document.getElementById(mediaType + 'Number'+(imagestartPoint+numberOfpages));

           if(hasClass(showElement,noDisplayClass))
              removeClassName(showElement,noDisplayClass); 
                  
            //set the current element to hide
            var hideElement = document.getElementById(mediaType + 'Number' + imagestartPoint);
            if(!hasClass(hideElement,noDisplayClass))
              addClass(hideElement,noDisplayClass); 
              
            imagestartPoint++;
           
       }
       else
       {
            videomaxPages = document.getElementById(mediaType + "RecordsCount").value; 
            
            //set the next element to show
           var showElement = document.getElementById(mediaType + 'Number'+(videostartPoint+numberOfpages));
           
           if(hasClass(showElement,noDisplayClass))
              removeClassName(showElement,noDisplayClass); 
                  
            //set the current element to hide
            var hideElement = document.getElementById(mediaType + 'Number' + videostartPoint);
            if(!hasClass(hideElement,noDisplayClass))
              addClass(hideElement,noDisplayClass); 
              
            videostartPoint++;
       }
        
        showMediaArrows(mediaType)
    }
    
    function showMediaArrows(mediaType){
    
        if(mediaType == 'image')
            showNextPrevLinks(imagestartPoint, mediaType);
        else
            showNextPrevLinks(videostartPoint, mediaType);

    }
    
    function showNextPrevLinks(startPoint, mediaType)
    {
         //show/hide the appropriate left arrow
         if(startPoint == 0)
         {
            document.getElementById(mediaType + 'PrevLink').style.visibility = 'hidden';
         }
         else
         {
            document.getElementById(mediaType + 'PrevLink').style.visibility = 'visible';
         }
                  
        //show/hide the appropriate right arrow
        var maxPages;
        if(mediaType == 'image')
            maxPages = imagemaxPages;
        else
            maxPages = videomaxPages;
        
        if((startPoint+numberOfpages) >= maxPages)
        {
            document.getElementById(mediaType + 'NextLink').style.visibility = 'hidden';
        }
        else
        {
            document.getElementById(mediaType + 'NextLink').style.visibility = 'visible';
        }
    }
    
       // Check if a class is among the classes used by an element
    function hasClass(element, className) {
        var regEx = new RegExp('\\b' + className + '\\b', "i")
        return element.className.match(regEx);
    }
    
    // Add class to element (preserves any existing classes)
    function addClass(element, value) {
        element.className += (element.className) ? (' ' + value) : value;
    }
    
    //Removes a class from an element. e=element, t=class name
    function removeClassName(e,t) {
        if (typeof e == "string") {
            e = xGetElementById(e);
        }
        //code to change and replace strings
        var ec = ' ' + e.className.replace(/^s*|s*$/g,'') + ' ';
        var nc = ec;
        t = t.replace(/^s*|s*$/g,'');
        //check if not already there
        if (ec.indexOf(' '+t+' ') != -1) {
            //found, so lets remove it
            nc = ec.replace(' ' + t.replace(/^s*|s*$/g,'') + ' ',' ');
        }
        //return the changed text!
        e.className = nc.replace(/^s*|s*$/g,''); //trimmed whitespace
        return true;
    }
    
    function showPaginationText(mediaType, selected)
    {
        var elmnt;
        if(mediaType == 'image')
            elmnt = document.getElementById('photoPage');
        else
            elmnt = document.getElementById('videoPage');  
            
        elmnt.value = (selected + 1);
    }

    function selectMedia(mediaType, selectedNumber)
    {
       if(mediaType == 'image')
       {
            imagemaxPages = document.getElementById(mediaType + "RecordsCount").value; 
            
            for (var i = 0; i < imagemaxPages; i++) {
            
                //clear the current one - not sure which one it is so remove it for all
               var elemnt = document.getElementById(mediaType + 'listNumber'+i);
               
               //check the current element   
               if(parseInt(i,10) == selectedNumber)
               {
                  addClass(elemnt,currentClass);
               }
               else
               {
                  if(hasClass(elemnt,currentClass))
                  {
                     removeClassName(elemnt,currentClass);
                  }
               } 
            }
        }
        else
        {
            videomaxPages = document.getElementById(mediaType + "RecordsCount").value; 
            
            for (var i = 0; i < videomaxPages; i++) {
            
                //clear the current one - not sure which one it is so remove it for all
               var elemnt = document.getElementById(mediaType + 'listNumber'+i);
               
               //check the current element   
               if(parseInt(i,10) == selectedNumber)
               {
                  addClass(elemnt,currentClass);
               }
               else
               {
                  if(hasClass(elemnt,currentClass))
                  {
                     removeClassName(elemnt,currentClass);
                  }
               } 
            }
        }
        
        showPaginationText(mediaType, selectedNumber);
        
    }
    
