/**
 * @author ccompton
 */
function MainNavigation(){
 
    return{
        catList:new Array(),
        init:function (call, isReload){
            this.selectMainNavigation(call, isReload);
        },
        selectMainNavigation: function (call, isReload){
            $("#mainNav").html("");
            var itemHtml = "";
            var selCatNum = 0;
            var selGroupNum = 0;

            var myFile = document.location.toString();
            if (myFile.match('#')) { // the URL contains an anchor
                // click the navigation item corresponding to the anchor
                var myAnchors = myFile.split('#');
                $items.catid = myAnchors[1];
                selCatNum = $items.catid;

                if(myAnchors.length > 2){
                    $items.groupid = myAnchors[2];
                    selGroupNum =myAnchors[2];
                }
            }
            $.ajaxSetup({ cache: false });
            $.getJSON("model/MainNavigation.php?call=getCats", function(data){
                $.each(data, function(i, item){
                    $mainNav.catList[i] = new Array();
                    $mainNav.catList[i]['id'] = item['id'];
                    $mainNav.catList[i]['name'] = item['name'];
                    $mainNav.catList[i]['desc'] = item['desc'];
                     $mainNav.catList[i]['groupdata'] = new Array();
                    var thisClass = "";
                    
                    if (isReload==true){
                        catNum = data.length-1;
                    }
                    if (call=="search"){
                        selCatNum = null;
                        $items.lastcatid =0;
                        $items.catid=0;
                    }
                    if(!myFile.match('#')&& i==0){
                        selCatNum = item['id'];
                    }
                    if (item['id'] == selCatNum) {
                        if(selGroupNum==0){
                            $app.cookieTrail = item['name'];
                        }
                        // set init cat id to first item in list
                        $items.catid = item['id'];
                        $items.lastcatid = item['id'];
                        var thisStyle = "block";
                        thisClass = "mainNavOpen";

                    }else{
                        thisStyle = "none";
                    }
                    if($app.admin==true&& $users.role != "superadmin" && !$users.catAccessList.match(item['id'])){
                        thisClass += "noAccess";
                       
                    }else{
                        itemHtml += "<div class='mainNavWrapper "+thisClass+"' id=mainNavDiv"+item['id']+"><h3><a href='#"+item['id']+"' onmousedown=\"$items.selectItems(this, '"+ item['name'] + "', 'getAll','false','','1','','', '" + item['id'] + "', '0')\">" + item['name'] + "</a></h3>";
                    
                        itemHtml += "<ul id='mainNavCat" + item['id'] + "' style='display: "+thisStyle+";'> ";
                    	
                        $.each(item['group'], function(ii, gItem){
                            $mainNav.catList[i]['groupdata'][ii] = new Array();
                            var thisGroupClass="";
                            $mainNav.catList[i]['groupdata'][ii]['desc'] = gItem['groupdesc'];
                            $mainNav.catList[i]['groupdata'][ii]['name'] = gItem['name'];
                            if (gItem['id'] == selGroupNum) {
                                $app.cookieTrail = item['name'] + " >> " + gItem['name'];
                                // set init cat id to first item in list
                                $items.groupid = gItem['id'];
                                $items.lastgroupid = gItem['id'];
                                var thisGroupStyle = "block";
                                thisGroupClass = "mainNavGroupOpen";
                            }
                            itemHtml += "<li class='"+thisGroupClass+" ' id=mainNavLi"+gItem['id']+"><a href='#"+item['id']+"#"+gItem['id']+"'  onclick=\"$items.selectItems(this, '" + item['name'] + " >> " + gItem['name'] + "','getAll','false','','1','','', '" + item['id'] + "', '" + gItem['id'] + "')\">" + gItem['name'] + "</a></li>";
                        });
                        itemHtml +="</ul>";
                        if($app.admin){
                            itemHtml += '<span id="mainNavCat'+item['id']+'_new"  style="display: '+thisStyle+';" class="addGroup"> <input type="text" /><br /><a title="Add A Sub-Category" href="javascript:$admin.AddGroup('+item['id']+')">Add A Sub-Category</a>';
                            itemHtml += "</span>";
                        }

                        itemHtml += "</div>";
                    }
                });// each
                if($app.admin && $users.role == "superadmin"){
                    itemHtml += '<span id="mainNavCat_new" class="addCat"> <input type="text" /><br /><a title="Add A Category"  href="javascript:$admin.AddCat()">Add A Category</a>';
                    itemHtml += "</span>";
                }
                $("#mainNav").html(itemHtml);

                if($app.admin){
                    $admin.AdminMainNavInt();
                }
                if (call!="search"){
                    $items.init();
                }
     
            });
        }
    }
}