FLN.View = function(){
    var _mainFrame = frames["mainFrame"];
    var _glossaryFrame = frames["glossaryFrame"];
    
    var _totalPagesModule = YAHOO.util.Dom.get("totalPagesModule");
    var _totalPagesTopic = YAHOO.util.Dom.get("totalPagesTopic");
    
    var _pageNumbering = YAHOO.util.Dom.get("pageNumbering");
    
    var _modulePageNumber = YAHOO.util.Dom.get("modulePageNumber");
    var _topicPageNumber = YAHOO.util.Dom.get("topicPageNumber");
    var _numberOfCompletedPages = YAHOO.util.Dom.get("numberOfCompletedPages");
    
    var _menuButton = YAHOO.util.Dom.get("menuButton");
    
    var _nextButton = YAHOO.util.Dom.get("nextButton");
    var _backButton = YAHOO.util.Dom.get("backButton");
	
    var _exitButton = YAHOO.util.Dom.get("exitButton");	
    
    //create shortcut for YAHOO.util.Event: 
    var _e = YAHOO.util.Event;
    
    return ({
        loadGlossary: function(){
            _glossaryFrame.location.href = "glossary.html";
        },
        loadPage: function(URL){
            //Yahoo.log("FLN.View.loadPage: " + URL);
            _mainFrame.location.href = URL;
        },
        
        setTotalPagesModule: function(n){
            //_totalPagesModule.innerHTML = n;
        },
        
        setTotalPagesTopic: function(n){
            //Yahoo.log("setTotalPagesTopic	" + n ,"warn");			
            _totalPagesTopic.innerHTML = n;
        },
        
        setModulePageNumber: function(n){
            //_modulePageNumber.innerHTML = n;
        },
        
        setTopicPageNumber: function(n){
            _topicPageNumber.innerHTML = n;
        },
        
        setNumberOfCompletedPages: function(n){
            //_numberOfCompletedPages.innerHTML = n;
        },
        
        enablePageNumbering: function(enable){
            FLN.Utils.enableEl(_pageNumbering, enable);
        },
        
        enableNextButton: function(enable){
            FLN.Utils.enableEl(_nextButton, enable);
        },
        
        enableBackButton: function(enable){
            FLN.Utils.enableEl(_backButton, enable);
        },
        
        enableMenuButton: function(enable){
            FLN.Utils.enableEl(_menuButton, enable);
        },
		
        enableExitButton: function(enable){
			//alert("View.enableExitButton(): enable: " + enable);
            FLN.Utils.enableEl(_exitButton, enable);
        },	
		
		makeExitButtonVisible: function(visible){
			//alert("View.makeExitButtonVisible(): visible: " + visible);			
            if (visible) {
                //YAHOO.util.Dom.replaceClass(_exitButton, "visibilityOff", "visibilityOn");
				_exitButton.style.visibility = "visible";
            }
            else {
                //YAHOO.util.Dom.replaceClass(_exitButton, "visibilityOn", "visibilityOff");
				_exitButton.style.visibility = "hidden";				
            }
			//YAHOO.util.Dom.getClass(_exitButton);
		},
        
        /*
         * Set up button events. Called from the FramesetController.
         */
        setMenuButtonEvent: function(fn, context, override){
            var mb = YAHOO.util.Dom.getFirstChild(_menuButton);
            var success = _e.on(mb, "click", fn, context, override);
        },
        
        setNextButtonEvent: function(fn, context, override){
            var nb = YAHOO.util.Dom.getFirstChild(_nextButton);
            var success = _e.on(nb, "click", fn, context, override);
        },
        
        setBackButtonEvent: function(fn, context, override){
            var bb = YAHOO.util.Dom.getFirstChild(_backButton);
            var success = _e.on(bb, "click", fn, context, override);
        },
        setExitButtonEvent: function(fn, context, override){
			//alert("View.setExitButtonEvent()");
            var eb = YAHOO.util.Dom.getFirstChild(_exitButton);
            var success = _e.on(eb, "click", fn, context, override);
        },
        
        getGlossaryTitle: function(id){
            var dtId = id + "_dt";
            var el = YAHOO.util.Dom.get(_glossaryFrame.document.getElementById(dtId));
            var t = YAHOO.util.Dom.getFirstChild(el).innerHTML;
            return t;
        },
        
        getGlossaryDefinition: function(id){
            var ddId = id + "_dd";
            var el = YAHOO.util.Dom.get(_glossaryFrame.document.getElementById(ddId));
            var t = el.innerHTML;
            return t;
        }
    })
};

