var SHOW_INFO_POPOVER = true;
var canPushData = true;
var fieldSet = null;
var pageURI = new URI(window.location);
var pageSystem = 'mdr';
if(pageURI.getData('system') != undefined){
    pageSystem = pageURI.getData('system');
} else if(pageURI.getData('System') != undefined){
    pageSystem = pageURI.getData('System');
}

document.addEvent('domready', function(e){
    initialize();
});

function initialize(){
    if($('recentlyViewedItems') == null && $('recentlyViewedItems') == undefined){
        canPushData = false;
    }else{
        $('recentlyViewedItems').setStyle('display','none');
        buildFieldSet();
        getRecentItems();  
    }
}

function getRecentItems(){
    try{
        var request = new Request({
            method: 'post',
            url: 'ajaxHandler',
            data: {
                'request_action':'RecentlyViewedItems',
                'System':pageSystem
            },
            onRequest: function() {  },
            onComplete: function(response) {
                populateRecentItems(JSON.parse(response));
                updateContextHelp();
                setTimeout("getRecentItems()",10000); // reload every 10 seconds...
            }
        }
        ).send();
    } catch(err){
    }
}

function buildFieldSet(){
    try{
        if(canPushData){
            fieldSet = new Element('div', {
                'class':'recently_viewed_items_fieldset'
            });

            var legend = new Element('div', {
                'class':'HLights_new HLightsTitle_new',
                'html':'Recently Viewed Items'
            });
            fieldSet.appendChild(legend);
            $('recentlyViewedItems').innerHTML = '';
            $('recentlyViewedItems').appendChild(fieldSet);
        }
    } catch(err){
    }
}

function populateRecentItems(data){
    try{  
        if(canPushData && data.recentlyViewedItems.length > 0){
            $('recentlyViewedItems').setStyle('display','block');
            if($('recently_viewed_item_table') != null){
                $('recently_viewed_item_table').destroy();
            }
            var table = new Element('table', {
                'class':'recently_viewed_item_table',
                'id':'recently_viewed_item_table'
            });
                    
            var tHead = new Element('thead', {});
            var tHeadRow = new Element('tr',{
                'class':'darkRow'
            });
                    
            tHeadRow.appendChild(new Element('th', {
                'html':'Type',
                'class':'recently_viewed_item_th'
            }));
            tHeadRow.appendChild(new Element('th', {
                'html':'Item',
                'class':'recently_viewed_item_th'
            }));
            tHead.appendChild(tHeadRow);
            table.appendChild(tHead);
            var tBody = new Element('tbody', {});
                    
            for(var i=0; i<data.recentlyViewedItems.length; i++){         
                var row = new Element('tr', {
                    'class':'listRow'
                });
                if(i%2==0){
                    row.addClass('ushik_Zebra_Row');
                }
                var col_0 = new Element('td', {
                    'class':'recently_viewed_item_td'
                });
                        
                var itemName=data.recentlyViewedItems[i].itemName;
                if(itemName.length>30){
                    itemName=itemName.substring(0,30);
                    itemName=itemName+"...";
                }
                                              
                itemName=wbr(itemName);                    
                        
                row.appendChild(new Element('td', {
                    'html':data.recentlyViewedItems[i].itemTypeBadge,
                    'class':'recently_viewed_item_td'
                }));
                var itemLink = new Element('a',{
                    'href':'ViewItemDetails?itemKey=' + data.recentlyViewedItems[i].itemKey,
                    'html':itemName
                });
                col_0.appendChild(itemLink);
                row.appendChild(col_0);
                tBody.appendChild(row);
            }
            table.appendChild(tBody);
            $(fieldSet).appendChild(table);
            $$('tr.listRow').each(function(item,index){
                $(item).addEvent('mouseover', function(e){
                    $(item).addClass('listRowMouseOver');
                });
                $(item).addEvent('mouseout', function(e){
                    $(item).removeClass('listRowMouseOver');
                });
            });
            // This line will load the javascript which handles the addition of
            // the extra into pop-over.
            // To remove this functionality, set SHOW_INFO_POPOVER = false;
            if(SHOW_INFO_POPOVER){
                var ItemDetailsScript = new Asset.javascript('scripts/administeredItemExtraInformation.js',{});
            }
        } else if(data.recentlyViewedItems.length == 0){
            $('recentlyViewedItems').setStyle('display','none');
        }
    } catch(err){
    }
}   


function wbr(str) { 
    if (str.length<15){
        return str;
    }else{
        return str.substring(0,15)+"<wbr/>"+wbr(str.substring(15));
    }
}
