jQuery(document).ready(function () { initVerticalTabs(); });
function initVerticalTabs() {
var $ = jQuery;
var vTabBox = $("#contect-tabbed");
if ($(vTabBox).length == 1) { //vertical tabBox element found
var tabs = $(vTabBox).find("li");
var tabContent = $(vTabBox).find("div[id^='vBoxTabContent']");
var tabCount = $(tabs).length;
var tabHandles = $(vTabBox).find("ul a");
var curPageElem = $(vTabBox).find("#vtabbox_curPage");
var totalPageElem = $(vTabBox).find("#vtabbox_totalPages");
var prevPageImg = $(vTabBox).find("#vtabbox_prevBtn");
var nextPageImg = $(vTabBox).find("#vtabbox_nextBtn");
var prevPageLink = $(vTabBox).find("#vtabbox_linkPrev");
var nextPageLink = $(vTabBox).find("#vtabbox_linkNext");
var curLocationHref = document.location.href;
var imgArr = new Array();
var ajaxCallUrl = "/ajax.aspx?m=Nv.SqlModule&name=FeaturedProductions&pgt={0}&ac={1}&pz={2}&tpid={3}&la={4}&w={5}&h={6}";
function navButton(activeStateImgSrc, inactiveStateImgSrc) {
this.activeImg = new Image();
this.activeImg.src = activeStateImgSrc;
this.inactiveImg = new Image();
this.inactiveImg.src = inactiveStateImgSrc;
}
//preload button states
imgArr[0] = new navButton("assets/ast/images/button_cycle_left.gif", "assets/ast/images/button_cycle_left_inactive.gif"); //prev
imgArr[1] = new navButton("assets/ast/images/button_cycle_right.gif", "assets/ast/images/button_cycle_right_inactive.gif"); //next
//hide all tabs except the first
$(tabContent).each(function (i) {
if (i > 0) {
$($(tabContent)[i]).hide();
}
});
//hook tab click event
$(tabHandles).each(function (i) {
$(this).click(function () {
activateTab(i);
return false;
});
});
function activateTab(index) {
for (k = 0; k < tabCount; k++) {
if (k == index) { //tab to be activated
$($(tabs)[index]).addClass("active"); //change tab appearance
$($(tabContent)[index]).show(1500); //make visible
$(curPageElem).text(catCurrentPg[index]); //update nav
$(totalPageElem).text(catPageCount[index]); //update nav
handleNavBar(index); //update navbar
} else {
$($(tabs)[k]).removeClass("active"); //change tab appearance
$($(tabContent)[k]).hide(500); //make invisible
}
}
}
function retrieveData_old(pageSize, langId, tabIndex) {
//var ajaxCallUrl="/ajax.aspx?m=Nv.SqlModule&name=FeaturedProductions&pg={0}&ac={1}&pz={2}&tpid={3}&la={4}&w={5}&h={6}";
var xmlDoc = $.ajax({
type: "GET",
url: "/ajax.aspx?m=Nv.SqlModule&name=FeaturedProductions&pgt=" + catCurrentPg[tabIndex] + "&ac=" + vTabBoxCatIds[tabIndex] + "&pz=" + vTabBoxPgsize + "&tpid=" + vTabBoxTargetPids[tabIndex] + "&la=" + vTabBoxLangId + "&mc=" + vTabBoxMaxChars[tabIndex] + "&w=86&h=52",
dataType: "xml",
success: function (xml) { processXML(xml, tabIndex) }
});
return xmlDoc.responseText;
}
function retrieveData(pageSize, langId, tabIndex) {
//var ajaxCallUrl="/ajax.aspx?m=Nv.SqlModule&name=FeaturedProductions&pg={0}&ac={1}&pz={2}&tpid={3}&la={4}&w={5}&h={6}";
var xmlDoc = $.ajax({
type: "GET",
url: "/ajax.aspx?m=Nv.SqlModule&name=FeaturedProductions&pgt=" + catCurrentPg[tabIndex] + "&ac=" + vTabBoxCatIds[tabIndex] + "&pz=" + vTabBoxPgsize + "&tpid=" + vTabBoxTargetPids[tabIndex] + "&la=" + vTabBoxLangId + "&mc=" + vTabBoxMaxChars[tabIndex] + "&w=86&h=52",
dataType: "html",
success: function (xml) { processXML(xml, tabIndex) }
});
return xmlDoc.responseText;
}
function processXML(oXmlDom, tabIndex) {
var outTxt = oXmlDom;
$($(tabContent)[tabIndex]).hide(500);
$($(tabContent)[tabIndex]).empty();
$($(tabContent)[tabIndex]).html(outTxt);
outTxt = ""; //re-init
$($(tabContent)[tabIndex]).show(1500);
if (jQuery.scrollTo) {
jQuery.scrollTo('#contect-tabbed', 1000);
}
}
function processXML_old(oXmlDom, tabIndex) {
var outTxt = "";
$($(tabContent)[tabIndex]).hide(500);
$($(tabContent)[tabIndex]).empty();
$(oXmlDom).find("article").each(function (i) {
var article = $(this);
var title = $(article).find("title");
var subtitle = $(article).find("subTitle");
var summary = $(article).find("summary");
var date = $(article).find("date");
var thumb = $(article).find("thumbImg");
var fUrl = $(article).find("fUrl");
if ($(thumb).text().length > 0) {
outTxt += "<dl class=\"article-entry\"><dt>";
}
else {
outTxt += "<dl><dt>";
}
if ($(fUrl).text().length > 0) {
outTxt += "<a title=\"Go to the full article\" href=\"" + $(fUrl).text() + "\">" + $(title).text() + "</a>";
} else {
outTxt += $(title).text();
}
outTxt += "</dt>";
if ($(thumb).text().length > 0) {
outTxt += "<dd class=\"photo\"><img src=\"" + $(thumb).text() + "\" alt=\"" + $(title).text() + "\"/></dd>";
}
outTxt += "<dd class=\"date\">" + $(date).text() + "</dd>";
if ($(subtitle).text().length > 0) {
outTxt += "<dd class=\"text\">" + $(subtitle).text() + "</dd></dl>";
}
else {
outTxt += "<dd class=\"text\">" + $(summary).text() + "</dd></dl>";
}
$($(tabContent)[tabIndex]).append(outTxt);
outTxt = ""; //re-init
})
$($(tabContent)[tabIndex]).show(1500);
if (jQuery.scrollTo) {
jQuery.scrollTo('#contect-tabbed', 1000);
}
}
function handleNavBar(activeTabIndex) {
//handle previous btn
switch (catCurrentPg[activeTabIndex]) {
case 0:
case 1:
$(prevPageLink).unbind('click');
$(prevPageLink).click(function () {
return false; //ignore click
});
$(prevPageImg).attr("src", imgArr[0].inactiveImg.src);
break;
default:
$(prevPageLink).unbind('click');
$(prevPageLink).click(function () {
catCurrentPg[activeTabIndex]--;
$(curPageElem).text(catCurrentPg[activeTabIndex]); //update nav
retrieveData(vTabBoxPgsize, vTabBoxLangId, activeTabIndex);
handleNavBar(activeTabIndex);
return false; //provide ajax function here
});
$(prevPageImg).attr("src", imgArr[0].activeImg.src);
break;
}
//handle next btn
if (catCurrentPg[activeTabIndex] == catPageCount[activeTabIndex]) { //last page
$(nextPageLink).unbind('click');
$(nextPageLink).click(function () {
return false; //ignore click
});
$(nextPageImg).attr("src", imgArr[1].inactiveImg.src);
} else {
$(nextPageLink).unbind('click');
$(nextPageLink).click(function () {
catCurrentPg[activeTabIndex]++;
$(curPageElem).text(catCurrentPg[activeTabIndex]); //update nav
retrieveData(vTabBoxPgsize, vTabBoxLangId, activeTabIndex);
handleNavBar(activeTabIndex);
return false; //ajax call here
});
$(nextPageImg).attr("src", imgArr[1].activeImg.src);
}
}
//initial navigation setup
handleNavBar(0);
} //end if vTabBox found
}

