﻿var campus=null;var campuses=null;var topicList=null;function loadCampus()
{if(campus!==null)
{renderCampusInfo();}
else
{postAsyncJson("webservices/custom/cccev/web2/campusservice.asmx/GetCampus","{}",onCampusLoadSuccess,onCampusLoadError);}
return false;}
function loadCampusByID(id)
{postAsyncJson("webservices/custom/cccev/web2/campusservice.asmx/GetCampusByID","{'campusID':"+id+"}",onCampusLoadSuccess,onCampusLoadError);}
function loadCampuses()
{if(campuses!==null)
{renderCampusLists();}
else
{postAsyncJson("webservices/custom/cccev/web2/campusservice.asmx/GetCampusList","{}",onCampusListLoadSuccess,onCampusListLoadError);}
return false;}
function loadNews(campusID,topicIDs,promotionDetailPageID,eventDetailPageID,success,error)
{postAsyncJson("webservices/custom/cccev/web2/promotionservice.asmx/GetPromotions",'{"campusID":'+campusID+', "topicIDs": "'+topicIDs+'", "promotionDetailPageID": '+promotionDetailPageID+', "eventDetailPageID": '+eventDetailPageID+' }',success,error);return false;}
function saveCampus(id,override)
{if(campus===null||id!==campus.campusID||override)
{$(document).trigger("CAMPUS_UPDATING");for(var i=0;i<campuses.length;i++)
{if(id===campuses[i].campusID)
{campus=campuses[i];break;}}
writeCccev();$("#campus, span.address").fadeOut(function()
{renderCampusInfo();renderCampusLists();});postAsyncJson("webservices/custom/cccev/web2/campusservice.asmx/ChangeCampus",'{"campusID":'+id+'}',onChangeCampusSuccess,onChangeCampusError);}
return false;}
function saveTopics(ids)
{$(document).trigger("TOPICS_UPDATING");topicList=ids;writeCccev();postAsyncJson("webservices/custom/cccev/web2/promotionservice.asmx/ChangeTopics",'{"topicsIDs": "'+ids+'"}',onSaveTopicsSuccess,onSaveTopicsError);return false;}
var JSON=JSON||{};JSON.stringify=JSON.stringify||function(obj)
{var t=typeof(obj);if(t!="object"||obj===null)
{if(t=="string")obj='"'+obj+'"';return String(obj);}
else
{var n,v,json=[],arr=(obj&&obj.constructor==Array);for(n in obj)
{v=obj[n];t=typeof(v);if(t=="string")v='"'+v+'"';else if(t=="object"&&v!==null)v=JSON.stringify(v);json.push((arr?"":'"'+n+'":')+String(v));}
return(arr?"[":"{")+String(json)+(arr?"]":"}");}};$(function()
{initCccev();if(campus!==null)
{renderCampusInfo();}
loadCampuses();bindCampusEvents();});function initCccev()
{readCookies();checkForcedReload();if(campus===null||campus.campusID==-1)
{$(document).trigger("SELECT_CAMPUS");}
return false;}
function checkForcedReload()
{if(campus!=null&&campus.expireMe_3_7==undefined)
{campuses=null;loadCampuses();loadCampusByID(campus.campusID);}}
function readCookies()
{var cookieName="Cccev.Web.Settings";var cookie=$.cookies.get(cookieName);if(cookie!==null)
{var settingsArray=cookie.split("|||");if(settingsArray[0].trim()!=="")
{campus=(new Function("return "+settingsArray[0]))();$(document).trigger("CAMPUS_UPDATED");}
if(settingsArray[1].trim()!=="")
{campuses=(new Function("return "+settingsArray[1]))();$(document).trigger("CAMPUS_LIST_LOADED");}
if(settingsArray[2].trim()!=="")
{topicList=settingsArray[2];}}
return false;}
function writeCccev()
{var cookieName="Cccev.Web.Settings";var cookieValue=campus!==null?JSON.stringify(campus):" ";cookieValue+="|||";cookieValue+=campuses!==null?JSON.stringify(campuses):" ";cookieValue+="|||";cookieValue+=topicList!==null?topicList:" ";setCookie(cookieName,cookieValue);return false;}
function renderCampusInfo()
{$("#nav").children(":first").remove();$("#campus-nav ul li").remove();$("#header-campus-template").render(campus).prependTo("#nav");$("#campus-info").html("");$("#footer-campus-template").render(campus).appendTo("#campus-info");return false;}
function renderCampusLists()
{var title=campus!==null?campus.name:"Select Campus"
var $template=$("#campus-list-template");$("#campus-picker ul li").remove();$("#campus-nav ul li").remove();$("#footer-campus-select li").remove();$("#campus-popup-list-template").render(campuses,{selected:title}).appendTo("#campus-picker ul");$template.render(campuses,{selected:title}).appendTo("#campus-nav ul");$template.render(campuses,{selected:title}).appendTo("#footer-campus-select");$(document).trigger("CONTENT_RENDERED");return false;}
function setCookie(key,value)
{var date=new Date();date.setDate(date.getDate()+90);var options={expiresAt:date};$.cookies.set(key,value,options);return false;}
function bindCampusEvents()
{$("#campus").live("click",function()
{clearNav();var nav=$("#campus-nav");if(nav.is(":visible"))
{nav.fadeOut("fast");$(this).removeClass("selected").next("img").fadeOut("fast");return false;}
nav.fadeIn("fast");$(this).addClass("selected").next("img").fadeIn("fast");return false;});$("#campus-info .selected-campus").live("click",function()
{var dropDown=$(this).next("ul");if(dropDown.is(":hidden"))
{dropDown.slideDown(100);return false;}
dropDown.slideUp(100);return false;});$("#campus-nav .fake-campus a").live("click",function()
{return false;});$("#campus-nav .campus a").live("click",function()
{clearNav();saveCampus(parseInt($(this).attr("rel")),false);return false;});$("#footer-campus-select li a").live("click",function()
{saveCampus(parseInt($(this).attr("rel")),false);return false;});$("#campus-picker li a").live("click",function()
{$("#campus-picker").fadeOut("fast").next("div").fadeOut("fast");saveCampus(parseInt($(this).attr("rel")),false);return false;});}
function postAsyncJson(servicePath,postData,onSuccess,onError)
{$.ajax({type:"POST",url:servicePath,contentType:"application/json; charset=utf-8",data:postData,dataType:"json",success:onSuccess,error:onError});return false;}
function onCampusLoadSuccess(result)
{campus=result.d;renderCampusInfo();writeCccev();$(document).trigger("CAMPUS_UPDATED");return false;}
function onCampusLoadError(result,errorText,thrownError)
{alert("Oh noes! Couldn't load Campus!");return false;}
function onCampusListLoadSuccess(result)
{campuses=result.d;renderCampusLists();writeCccev();$(document).trigger("CAMPUS_LIST_LOADED");return false;}
function onCampusListLoadError(result,errorText,thrownError)
{alert("Oh noes! Couldn't get list of Central's Campuses!");return false;}
function onChangeCampusSuccess(result)
{$(document).trigger("CAMPUS_UPDATED");return false;}
function onChangeCampusError(result,errorText,thrownError)
{alert("Oh noes! Campus couldn't be updated!");return false;}
function onSaveTopicsSuccess(result)
{$(document).trigger("TOPICS_UPDATED");return false;}
function onSaveTopicsError(result,errorText,thrownError)
{alert("Oh noes! News couldn't be updated!");return false;}
