Prophesy Fulfillment

Apologetic Tables

Copyright 2011 Churches of Christ USA. All rights reserved.

Web Hosting by Yahoo!

Churches of Christ USA
Tulsa, OK 74135
ph: 918.949.6902
alt: 903.277.1536

// setstats

 

 

 

// <![CDATA[

YAHOO.namespace(‘Smb.Asteroids’);
var YSA = YAHOO.Smb.Asteroids;

YSA.Nav = {
isNavNorth : false,
tmr : null,
tmrInterval : 600,
prevCloseNode : null,
isFirstVisit : true,

openSub : function(navNode) {
$LOG(‘openSub’);

// Clear the timer if any, and if the previously opened subnav is still open (timeout expiration)
YSA.Nav.clearTimer();
YSA.Nav.closePrevSubMenu();

// For horizontal navigation, set the top position of sub-nav as the height of the ‘trigger’ element.
if (YSA.Nav.isNavNorth) {
var subNavNode = navNode.getElementsByTagName(‘ul’)[0];
subNavNode.style.top = navNode.offsetHeight + ‘px’;
}

$D.addClass(navNode, ‘opened’);
$D.addClass(‘admincontrols’, ‘displayNone’);
},
closeSub : function(navNode) {
$LOG(‘closeSub’);
YSA.Nav.clearTimer();
YSA.Nav.prevCloseNode = navNode;
YSA.Nav.tmr = setTimeout(function() { YSA.Nav.hideSub(navNode); }, YSA.Nav.tmrInterval);
},
hideSub : function(navNode) {
YSA.Nav.clearTimer();

// For key board accessibility, the active sub menu is display:block., not none. So giving -999 to move it off screen in hide mode
if (YSA.Nav.isNavNorth && $D.hasClass(navNode, ‘active’)) {
var subNavNode = navNode.getElementsByTagName(‘ul’)[0];
subNavNode.style.top = ‘-999px’;
}
$D.removeClass(navNode, ‘opened’);
$D.removeClass(‘admincontrols’, ‘displayNone’);
},
closePrevSubMenu : function() {
if (YSA.Nav.prevCloseNode) {
$LOG(‘Closing previous sub nav’);
YSA.Nav.hideSub(YSA.Nav.prevCloseNode);
YSA.Nav.prevCloseNode = null;
}
},
isSubOpen : function(navNode) {
return $D.hasClass(navNode, ‘opened’);
},
toggleSub : function(navNode) {
var NAV = YSA.Nav;
if (NAV.isSubOpen(navNode)) {
NAV.closeSub(navNode);
} else {
NAV.openSub(navNode);
}
},
mouseOverTrigger : function(e) {
$LOG(‘mouseOverTrigger’);
YSA.Nav.openSub(this);
},
mouseOutTrigger : function(e) {
$LOG(‘mouseOutTrigger’);
var target = $E.getTarget(e);
var relatedTarget = $E.getRelatedTarget(e);
$LOG(target);
$LOG(relatedTarget);
YSA.Nav.closeSub(this);
},
mouseOverMainNav : function(e) {
$LOG(‘mouseOverMainNav’);
if (!$D.hasClass(this, ‘trigger’)) {
YSA.Nav.closePrevSubMenu();
}
},
toggleClicked : function(e) {
$LOG(‘toggle clicked’);
$LOG(e);
$E.stopEvent(e);
YSA.Nav.toggleSub(this.parentNode);
},
clearTimer : function() {
$LOG(‘Clearing Nav Timer’);
if (YSA.Nav.tmr) {
clearTimeout(YSA.Nav.tmr);
}
YSA.Nav.tmr = null;
},
clearSubNavStyles : function() {
/* For horizontal navigation, we set the ‘top’ of subNav to align it with the bottom of trigger
Now if the user chage the template from ribbon, remove this inline style. Else this old inline value will take precedence! */
var subNavNode;
var navDiv = $(‘navigation’);
var triggers = $D.getElementsByClassName(‘trigger’, ”, navDiv);
for (var el in triggers) {
if (YAHOO.lang.hasOwnProperty(triggers, el)) {
subNavNode = triggers[el].getElementsByTagName(‘ul’)[0];
subNavNode.style.top = ”;
}
}
},
initNavSettings : function() {
var wrapperDiv = $(‘wrapper’);
YSA.Nav.isNavNorth = (wrapperDiv && $D.hasClass(wrapperDiv, ‘navpos_north’)) ? true : false;
},
init : function() {
// For the first visit, subscribe to the layout(template) change event
// When user changes template from the ribbon, we need to re-init this JS, based on the new templates settings.
if (YSA.Nav.isFirstVisit) {
YSA.Nav.isFirstVisit = false;
if (YSA.UiMgr) {
YSA.UiMgr.Layout.onChange.eventObj.subscribe(
function() { YSA.Nav.init() });
}
} else {
YSA.Nav.clearSubNavStyles();
}

YSA.Nav.initNavSettings();
var navDiv = $(‘navigation’);
if (! $D.hasClass(navDiv, ‘sub_dynamic’)) {
return;
}
YSA.Nav.initNavSettings();
var triggers = $D.getElementsByClassName(‘trigger’, ”, navDiv);
$E.on(triggers, ‘mouseover’, this.mouseOverTrigger);
$E.on(triggers, ‘mouseout’, this.mouseOutTrigger);
var toggles = $D.getElementsByClassName(‘toggle’, ‘a’, navDiv);
$E.on(toggles, ‘click’, this.toggleClicked);
var triggers = $D.getElementsByClassName(‘mainNav’, ”, navDiv);
$E.on(triggers, ‘mouseover’, this.mouseOverMainNav);
}
};
$E.on(window, ‘load’, YSA.Nav.init, YSA.Nav, true);

// ]]>

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s