container = $('#drop-panel-container'),
contents = $(container).html();
if (isIE8) {
$(container).replaceWith(f+contents+b)
}
}
function dropPanelSetUp(data) {
/* buttons should be a dataobject of strings representing IDs
the hide and show functions are expecting IDs so passing a class will result in a
failure.
click as the action is assumed for now
the data object should look like this:
{ masterlistener:(string[dom id]),
panel:(string[dom id]),
eventgroup1:{ button:(string[dom id]),
content:(string[dom id]),
offset:{x:(int),y:(int)},
on_state_class: ''(string)
},
eventgroup2:{ button:(string[dom id]),
content:(string[dom id]),
offset:{x:(int),y:(int)},
on_state_class: ''(string)
} ... etc
}
The drop panel nodes should be placed so they share the same offset parent as the buttons that activate it.
NOTE: IE8 Got-chya: the ID for the panel is hard coded into the IE8 rouned corners code.
If you have changed the ID for the drop panel and are having trouble with IE8
change the ID in the template string in this function: ie8DropPanel()
*/
var speed = 300,
panel = $('#'+data.panel),
buttons = [];
for (var i=1,eg; eg=data[('eventgroup'+i)]; i++) {
var bp = $('#'+eg.button).position(), //button position
ph = $('#'+eg.button).height(), //button height
panelPos = [bp.top+ph, bp.left, eg.offset];
on_state_class = eg.on_state_class;
buttons.push([$('#'+eg.button),$('#'+eg.content),panelPos,eg.button,on_state_class]);
}
$('#'+data.masterlistener).bind('click',{speed:speed,panel:panel,buttons:buttons},function(event){
var org = event.target,
speed = event.data.speed,
panel = event.data.panel,
buttons = event.data.buttons,
panel_open = isPanelOpen(panel);
for (var i=buttons.length-1, b; b=buttons[i]; i--) {
/*
* b[0] = button DOM object
* b[1] = content DOM object
* b[2] = the display co-ord object:
* [0] = top (int)
* [1] = left (int)
* [2] = offset object
* {x,y}(int,int)
* b[3] = button ID (string)
* b[4] = button 'on' class
*/
var button_id = b[3],
same_content = isSameContent(panel,b[1]);
if ( $(org).attr('id') === button_id || $(org).parents('#'+button_id).attr('id')){
if(!same_content) {
hideAllContent(buttons);
movePanel(panel,b[2]);
if (panel_open) {
showContent(b[1],b[0],b[4]);
} else {
showContent(b[1],b[0],b[4]);
showPanel(panel,speed);
}
} else {
hidePanel(panel,speed,b[4]);
}
}
}
function isPanelOpen(panel) {
return ($(panel).css('display').toLowerCase() === 'block');
}
function isSameContent (panel,content) {
return ($(content, panel).css('display').toLowerCase() === 'block');
}
function movePanel(panel,b) {
// b[0] top, b[1] left, b[2] {x,y}
$(panel).css({
'top': (b[0] + b[2].x)
});
$(panel).css({
'left': (b[1] + b[2].y)
});
}
function showPanel(panel,speed) {
$(panel).slideDown(speed);
}
function hidePanel(panel,speed) {
$(panel).slideUp(speed, function() {hideAllContent(buttons);});
}
function showContent(content, button, btn_class) {
$(content).show();
$(button).addClass(btn_class);
}
function hideContent(content) {
$(content).hide();
}
function hideAllContent(buttons) {
for (var i = buttons.length-1, b; b=buttons[i]; i--) {
$(b[1]).hide();
$(b[0]).removeClass(b[4]);
}
}
})
}
return {
ieRoundedCorners:ieRoundedCorners,
ie8DropPanel:ie8DropPanel,
dropPanelSetUp:dropPanelSetUp
}
})();
var headerNavication = (function($,cw) {
var nav_item_list = $('.cw-header .main-nav ul.main > li'),
channel_id_list = '',
channel,
sub_channel;
var findChannel = function () {
var winloc = isIE ? document.URL.split('/') : document.documentURI.split('/') ,
channel_id = winloc[3],
sub_chanel_id = winloc.length > 5 ? '/'+winloc[4]+'/' : '',
reg_sub_find_id = new RegExp(sub_chanel_id,'ig'),
reg_removed_id = /^nav-/i;
for (var i=nav_item_list.length-1,n; n=nav_item_list[i]; i--) {
if ( channel_id === $(n).children('a').attr('id').replace(reg_removed_id,'') ) {
var list = $(n).children('ul').children('li');
if (sub_chanel_id.length > 0) {
for (var j=list.length-1,l; l=list[j]; j--) {
if (reg_sub_find_id.test($(l).children('a').attr('href'))) {
break;
} else {
l = false;
}
}
}
break;
}
}
findChannel = function () {
return [n,l];
}
return [n,l];
}
var init = (function() {
channel = findChannel()[0] || nav_item_list[0];
sub_channel = findChannel()[1];
if (sub_channel) {
highlightSubChannel();
}
clearNav();
if(isIE) {
cw.ieRoundedCorners();
if(isIE8) {
cw.ie8DropPanel();
}
}
if ($('#handle-header').attr('id')) {
cw.dropPanelSetUp({
masterlistener: 'handle-header',
panel: ('drop-panel-container'),
eventgroup1: {
button: 'btn-newspapers',
content: 'panel-newspapers',
offset: {
x: 5,
y: 0
},
on_state_class: 'newspapers-dropdown-on'
},
eventgroup2: {
button: 'btn-networks',
content: 'panel-networks',
offset: {
x: 5,
y: 0
},
on_state_class: 'networks-dropdown-on'
}
});
}
//need to check state of search radio buttons since firefox doesn't reset to the default checked radio button
if($('.cw-header #radio-btn-yp:checked').attr('id') != null){
$('.cw-header #header-search-form').attr('action','http://canadacom.yellowpages.ca/search/');
$('.cw-header #header-search-string').attr('name','what');
$('.cw-header #radio-btn-yp').siblings('label').removeClass('selected');
$('.cw-header #radio-btn-yp').next().addClass('selected');
}
eventSetUp();
}())
function highlightSubChannel() {
if((document.location+"").indexOf("/sports/football/cfl/") > -1) $(".mainnav-item .cfl").addClass('sub-nav-highlight');
else if((document.location+"").indexOf("/sports/football/grey-cup-2011/") > -1) $(".mainnav-item .cfl").addClass('sub-nav-highlight');
else if((document.location+"").indexOf("/sports/football/nfl/") > -1) $(".mainnav-item .nfl").addClass('sub-nav-highlight');
else $(sub_channel).addClass('sub-nav-highlight');
}
function clearNav() {
clearTabs();
$(channel).children('ul').show();
$(channel).css('background-position', 'bottom right');
}
function eventSetUp() {
$('.cw-header .main-nav ').bind('mouseleave', function(event){
if (isIE) {
if ($(event.relatedTarget).parents('.main-nav').length 0)?"" + value.substring(0,pos) + "" + value.substring(pos, term.length) + "" + value.substring(pos + term.length) + "":value.substring(0, term.length) + "" + value.substring(pos + term.length) + ""; }, scroll: false, selectFirst: false }); });
screen actors guild royal rumble results sag awards 2012 kyra sedgwick honor killings mary tyler moore x games

Study after study has shown that pets help reduce their owners? level of stress and can make a home a more enjoyable place to be. Of course, there are some people who don?t have cats or dogs because they are allergic, don?t have the time to dedicate to them, or simply don?t prefer them. For these individuals, fish tanks or aquariums are an excellent alternative because they not only have the same calming effect on the people around them, they also add a beautiful conversation piece to virtually any room in a home.
Real-time macroeconomic and geopolitical events and sentiment about them now figure into RavenPack News Analytics 3.0, to help financial firms react more quickly to what?s happening in the world.