﻿postingListOpen = false;
var postingPopupitemid;

function setupPostingPopupLinks()
{

    $(".postingPopupLink").unbind('click',handlePostingPopup);
    $(".postingPopupLink").click(handlePostingPopup);
    
    $(".postingListPopupLink").unbind('click',handlePostingListPopup);
    $(".postingListPopupLink").click(handlePostingListPopup);

    $("#printposting").unbind('click', handlePostingPrint);
    $("#printposting").click(handlePostingPrint);

    $("#printpostinglist").unbind('click', handlePostingListPrint);
    $("#printpostinglist").click(handlePostingListPrint);

    $(".SubmitPostingPopup").unbind('click',handleSubmitPostingPopup);
    $(".SubmitPostingPopup").click(handleSubmitPostingPopup);
    
}

function handlePostingPrint() {
    
    var postingPrint = document.getElementById("PrintFrame");
    var printDoc = (postingPrint.contentWindow || postingPrint.contentDocument);
    if (printDoc.document) {
        printDoc = printDoc.document;
    }
    
    styleSheetLoc = "/DesktopModules/zPostings/module.css";
    printDoc.write("<html><head><title>The Career Centre - Parksville Qualicum Oceanside 250-248-3205 Job Postings</title>");
    printDoc.write("</head>");
    printDoc.write("<link rel=\"stylesheet\" type=\"text/css\" href=\""+styleSheetLoc+"\" />");
    printDoc.write("<body  onload='this.focus(); this.print()'><div id=\"mainPostingContent\" class=\"PostingPopupContent\">");
    printDoc.write($("#mainPostingContent").html() + "</div></body></html>");
    
    printDoc.close();
}

function handlePostingListPrint() {
    
    var postingListPrint = document.getElementById("PrintFrame");
    var printDoc = (postingListPrint.contentWindow || postingListPrint.contentDocument);
    if (printDoc.document) {
        printDoc = printDoc.document;
    }
    styleSheetLoc = "/DesktopModules/zPostings/module.css";
    printDoc.write("<html><head><title>The Career Centre - Parksville Qualicum Oceanside 250-248-3205 Job Postings</title>");
    printDoc.write("</head>");
    printDoc.write("<link rel=\"stylesheet\" type=\"text/css\" href=\"" + styleSheetLoc + "\" />");
    printDoc.write("<body  onload='this.focus(); this.print()'>");
    printDoc.write("<div id=\"PostingListHeader\" class=\"PostingListDivheader\"><div style=\"float:left;\"><img src=\"/images/cclogo.jpg\" style=\"vertical-align:middle;width:100px;\" /><span style=\"clear:both;display:inline-block;width:800px;text-align:center;\">Current Job Listings</span></div></div>");
    
    printDoc.write("<div id=\"PostingListContent\" class=\"PostingPopupContent\">");
    printDoc.write($("#PostingListContent").html() + "</div></body></html>");

    printDoc.close();

}

function handlePostingListPopup()
{

    $("#PostingListPopup").css({top:($(window).scrollTop()+50)+"px"}).show();
    $("#PostingListPopup").show();
    $("#mainPostingPopup").hide();
    $("#mainMorePopup").hide();
    if ($("#mainArticlePopup") != undefined) $("#mainArticlePopup").hide();
    
      postingListOpen = true;   
    $("#PostingListContent").html("<img src=\"images/ajax-loader.gif\" />");
    
    getPopupPostingList();
    
}

function hideSubmitPostingDiv(closer) {
    var scrollPosition = $(window).scrollTop();
    window.location.hash = "";
    $(window).scrollTop(scrollPosition)    
    $(closer).parent().hide();
}


function handleSubmitPostingPopup() {
    $("#mainArticlePopup").hide();
    $("#SubmitPostingPopup").css({ top: ($(window).scrollTop() + 50) + "px" }).show();
    $("#SubmitPostingContent").html("<img src=\"images/ajax-loader.gif\" />");
    $("#SubmitPostingContent").load("getSubmitForm.aspx?moduleid=388&redirurl=~/PQCCMain.aspx?cmd=showArticle%26itemid=73");
}


function hidePostingPopupDiv(closer)
{
    var scrollPosition = $(window).scrollTop();
    window.location.hash = "";
    $(window).scrollTop(scrollPosition)
    document.title = documentTitle;
    $(closer).parent().hide();   
    if ($(closer).parent().attr("id") == "PostingListPopup") postingListOpen = false;
   if (postingListOpen == true)
   {
      handlePostingListPopup();
   }   

   if (morePopped == true)
   {
   
     showmorePopup();
   }
}

function handlePostingPopup()
{

    
    //$("#mainPostingPopup").show();    
    $("#PostingListPopup").hide();
    $("#mainMorePopup").hide();
    $("#mainPostingPopup").css({ top: ($(window).scrollTop() + 50) + "px" }).show();
    $("#mainPostingContent").html("<img src=\"images/ajax-loader.gif\" />");
    postingPopupitemid = $(this).attr("postingItemId");

    getPopupPosting(postingPopupitemid);

}

function popupPosting(postingid) {
    $("#PostingListPopup").hide();
    $("#mainMorePopup").hide();
    $("#mainPostingPopup").css({ top: ($(window).scrollTop() + 50) + "px" }).show();
    $("#mainPostingContent").html("<img src=\"images/ajax-loader.gif\" />");
    postingPopupitemid = postingid;
    getPopupPosting(postingPopupitemid);
}

function getPopupPostingList()
{

    var modToGet  = postingCtlPath+"GetPosting.aspx?cmd=GetList&ModuleId="+postingModuleId+"&basepath="+DNNBasePath 

    $.ajax({
            type: "GET",
            url: modToGet,
            dataType: "xml",
            success: showPostingListFromFeed,                       
            error: function(req,stat,er){},
            cache: false
            
       });   
}

function getPopupPosting(postingPopupitemid)
{

    var modToGet  = postingCtlPath+"GetPosting.aspx?cmd=GetPosting&ModuleId="+postingModuleId+"&ItemId="+postingPopupitemid+"&basepath="+DNNBasePath 

    $.ajax({
            type: "GET",
            url: modToGet,
            dataType: "xml",
            success: showSinglePostingFromFeed,                       
            error: function(req,stat,er){},
            cache: false
            
       });   
}

function showPostingListFromFeed(xml)
{
    var xmlModuleId;
    var postingli = "<ul class=\"PopupPostingList\">";
      feed = xml;
      $(xml).children("rss").children("channel").each(function() {                  
          var channelTitle = $(this).children("title").text();            
          if (channelTitle == "Postings")
            {                        
            
                xmlModuleId = $(this).children("moduleid").text();
                
                var headerli = "<li><div class=\"PostingListTitle\"></div><div class=\"PostingListTerms PostingHeader\">Terms</div><div class=\"PostingListWages PostingHeader\">Wages</div><div class=\"PostingListDate PostingHeader\">Posted</div></li>";
                headerli += "<img src=\"images/grid/greydot.png\" style=\"width:100%;height:1px;\">";
                postingli += headerli;
                $(this).children("item").each(function() {                
                    var xmlItemId = $(this).children("itemid").text();
                    var xmlTitle = $(this).children("title").text();
                  
                    var xmlPostingDate = $(this).children("[nodeName=InceptionPoint.PostingFeed:PostingDateStr]").text();                    
                    var xmlPostingLocation = $(this).children("[nodeName=InceptionPoint.PostingFeed:Location]").text();
                    var xmlItemModuleId = $(this).children("[nodeName=InceptionPoint.PostingFeed:ItemModuleId]").text();
                    var xmlTerms  = $(this).children("[nodeName=InceptionPoint.PostingFeed:Terms]").text();
                    var xmlWages = $(this).children("[nodeName=InceptionPoint.PostingFeed:Wages]").text();
                    var cellid = $(curPostCellId).attr("id")                   
                    var linkstub = "<a ";
                                     
                    linkstub += "profilerModuleId=\""+xmlItemModuleId+"\" profilerItemId=\""+xmlItemId+"\" postingitemid=\""+xmlItemId+"\" class=\"profileCollect postingPopupLink\">"
                   
                    var newli = "<li>";
                    newli += linkstub;                    
                    
                    newli += "<div class=\"PostingListTitle\">"+xmlTitle+"";
                    newli += "<span class=\"PostingListLocation\">" + xmlPostingLocation + "</span></div>";                                        
                    newli+= "<div class=\"PostingListTerms\">"+xmlTerms+"</div>";
                    newli+= "<div class=\"PostingListWages\">"+xmlWages+"</div>";
                    newli += "<div class=\"PostingListDate\">"+xmlPostingDate+"</div>";
                    
                   
                    newli += "</li>";
                    newli +="</a>";
                    newli+="<img src=\"images/grid/greydot.png\" style=\"width:100%;height:1px;\">";
                    postingli+=newli;
                });
                postingli += "</u>";
                $("#PostingListContent").html(postingli);
                setupPostingPopupLinks();

                var hashStr = "showPostingList=Module:" + postingModuleId;
                $("#PostingListPopup").attr("hash", hashStr);
                $("#PostingListPopup").attr("title", "Job Postings - " + documentTitle);
                document.title = "Job Postings - " + documentTitle;
                window.location.hash = hashStr;
            }
         });
}


function showSinglePostingFromFeed(xml)
{

      var xmlModuleId;
      feed = xml;
      $(xml).children("rss").children("channel").each(function () {
          var channelTitle = $(this).children("title").text();
          if (channelTitle == "Postings") {

              xmlModuleId = $(this).children("moduleid").text();
              $(this).children("item").each(function () {


                  var xmlItemId = $(this).children("itemid").text();
                  var xmlTitle = $(this).children("title").text();
                  var xmlPostingDate = $(this).children("[nodeName=InceptionPoint.PostingFeed:PostingDateStr]").text();
                  var xmlLocation = $(this).children("[nodeName=InceptionPoint.PostingFeed:Location]").text();
                  var xmlCity = $(this).children("[nodeName=InceptionPoint.PostingFeed:City]").text();

                  var xmlTerms = $(this).children("[nodeName=InceptionPoint.PostingFeed:Terms]").text();
                  var xmlWages = $(this).children("[nodeName=InceptionPoint.PostingFeed:Wages]").text();
                  var xmlHrsWk = $(this).children("[nodeName=InceptionPoint.PostingFeed:HrsWk]").text();
                  var xmlJobLen = $(this).children("[nodeName=InceptionPoint.PostingFeed:JobLen]").text();
                  var xmlstartdate = $(this).children("[nodeName=InceptionPoint.PostingFeed:StartDate]").text();
                  var xmlwebsite = $(this).children("[nodeName=InceptionPoint.PostingFeed:website]").text();
                  if (xmlwebsite.indexOf("http://") == -1 && $.trim(xmlwebsite) != "") xmlwebsite = "http://" + xmlwebsite;
                  var xmlRequirements = $(this).children("[nodeName=InceptionPoint.PostingFeed:Requirements]").text();
                  var xmlResponsibilities = $(this).children("[nodeName=InceptionPoint.PostingFeed:Responsibilities]").text();
                  var xmlEducation = $(this).children("[nodeName=InceptionPoint.PostingFeed:EducationLevel]").text();
                  var xmlExperience = $(this).children("[nodeName=InceptionPoint.PostingFeed:ExperienceReq]").text();
                  var xmlReqSkills = $(this).children("[nodeName=InceptionPoint.PostingFeed:RequiredSkills]").text();
                  var xmlAdditionalSkills = $(this).children("[nodeName=InceptionPoint.PostingFeed:AdditionalSkills]").text();
                  var xmlIncentives = $(this).children("[nodeName=InceptionPoint.PostingFeed:Incentives]").text();

                  var xmlAdditionalInfo = $(this).children("[nodeName=InceptionPoint.PostingFeed:AdditionalInfo]").text();
                  var xmlHowToApply = $(this).children("[nodeName=InceptionPoint.PostingFeed:HowToApply]").text();


                  var headerList = "<ul class=\"JobHeaderList\">"
                  headerList += "<li class=\"JobHeader\"><span class=\"JobHeaderLabel\">Job Title</span><span id=\"JobTitle\">" + xmlTitle + "</span></li>";
                  headerList += "<li id=\"JobCityLi\" class=\"JobHeader\"><span class=\"JobHeaderLabel\">City</span><span id=\"JobCity\">" + xmlCity + "</li>";
                  headerList += "<li class=\"JobHeader\"><span class=\"JobHeaderLabel\">Location</span><span id=\"JobLocation\">" + xmlLocation + "</li>";

                  headerList += "</ul>";

                  var headerDetailList = "<ul class=\"JobDetailsHeaderList\">";
                  headerDetailList += "<li class=\"JobDetailsHeader\"><span class=\"JobDetailsHeaderLabel\">Terms</span><span id=\"JobTerms\">" + xmlTerms + "</span></li>";
                  headerDetailList += "<li class=\"JobDetailsHeader\"><span class=\"JobDetailsHeaderLabel\">Wage</span><span id=\"JobWages\">" + xmlWages + "</span></li>";
                  headerDetailList += "<li class=\"JobDetailsHeader\"><span class=\"JobDetailsHeaderLabel\">Hours Per Week</span><span id=\"JobHrsWk\">" + xmlHrsWk + "</span></li>";
                  headerDetailList += "<li class=\"JobDetailsHeader\"><span class=\"JobDetailsHeaderLabel\">Length of Job</span><span id=\"JobLen\">" + xmlJobLen + "</span></li>";
                  headerDetailList += "<li class=\"JobDetailsHeader\"><span class=\"JobDetailsHeaderLabel\">Start Date</span><span id=\"JobStartDate\">" + xmlstartdate + "</span></li>";
                  headerDetailList += "<li class=\"JobDetailsHeader\"><span class=\"JobDetailsHeaderLabel\">Date Posted</span><span id=\"JobPostingDate\">" + xmlPostingDate + "</span></li>";
                  headerDetailList += "<li class=\"JobDetailsHeader\"><span class=\"JobDetailsHeaderLabel\">Job ID</span><span id=\"JobID\">" + xmlItemId + "</span></li>";
                  headerDetailList += "</ul>";



                  var detailsList = "<ul class=\"JobDetailsList\">";
                  if (stripTags(xmlRequirements) != "") detailsList += "<li class=\"JobDetails\"><span class=\"JobDetailsLabel\">Description</span><span class=\"JobText\" id=\"JobRequirements\">" + xmlRequirements + "</span></li>";
                  if (stripTags(xmlResponsibilities) != "") detailsList += "<li class=\"JobDetails\"><span class=\"JobDetailsLabel\">Responsibilities</span><span  class=\"JobText\"  id=\"JobResponsibilities\">" + xmlResponsibilities + "</span></li>";
                  if (stripTags(xmlEducation) != "") detailsList += "<li class=\"JobDetails\"><span class=\"JobDetailsLabel\">Education</span><span  class=\"JobText\"  id=\"JobEducation\">" + xmlEducation + "</span></li>";
                  if (stripTags(xmlExperience) != "") detailsList += "<li class=\"JobDetails\"><span class=\"JobDetailsLabel\">Experience</span><span  class=\"JobText\"  id=\"JobExperience\">" + xmlExperience + "</span></li>";
                  if (stripTags(xmlReqSkills) != "") detailsList += "<li class=\"JobDetails\"><span class=\"JobDetailsLabel\">Required Skills</span><span  class=\"JobText\"  id=\"JobReqSkills\">" + xmlReqSkills + "</span></li>";
                  if (stripTags(xmlAdditionalSkills) != "") detailsList += "<li class=\"JobDetails\"><span class=\"JobDetailsLabel\">Additional Skills</span><span  class=\"JobText\"  id=\"JobAdditionalSkills\">" + xmlAdditionalSkills + "</span></li>";
                  if (stripTags(xmlIncentives) != "") detailsList += "<li class=\"JobDetails\"><span class=\"JobDetailsLabel\">Incentives</span><span  class=\"JobText\"  id=\"JobIncentives\">" + xmlIncentives + "</span></li>";
                  if (stripTags(xmlAdditionalInfo) != "") detailsList += "<li class=\"JobDetails\"><span class=\"JobDetailsLabel\">Additional Info</span><span  class=\"JobText\"  id=\"JobAdditionalInfo\">" + xmlAdditionalInfo + "</span></li>";
                  if (stripTags(xmlHowToApply) != "") detailsList += "<li class=\"JobDetails\"><span class=\"JobDetailsLabel\">How To Apply</span><span  class=\"JobText\"  id=\"JobHowToApply\">" + xmlHowToApply + "</span></li>";
                  detailsList += "</ul>";

                  var footerList = "<ul class=\"JobFooterList\">";
                  footerList += "<li><span class=\"JobFooterLabel\">Website</span><span id=\"JobWebsite\"><a target=\"_new\" href=\"" + xmlwebsite + "\">" + xmlwebsite + "</a></li>";
                  footerList += "</ul>";

                  var mainList = "<ul class=\"JobPostingOuterList\"><li>" + headerList + "</li><li>" + headerDetailList + "</li><li>" + detailsList + "</li><li>" + footerList + "</li></ul>";
                  $("#mainPostingContent").html(mainList);




                  $("#mainPostingPopup").attr("profilerModuleId", xmlModuleId);
                  $("#mainPostingPopup").attr("profilerItemId", xmlItemId);


                  var hashStr = "showPosting=Module:" + postingModuleId + ",Posting:" + postingPopupitemid;
                  $("#mainPostingPopup").attr("hash", hashStr);
                  $("#mainPostingPopup").attr("title", "Job Posting: " + xmlTitle + " - " + documentTitle);
                  document.title = "Job Posting: " + xmlTitle + " - " + documentTitle;
                  window.location.hash = hashStr;


              });
          }
      });
      
}


function stripTags(str) {
    var retstr = str.replace(/<\/?[^>]+>/gi, '').replace(/[\s\xA0]+/g, "").replace("&#160;", "");
    retstr = $.trim(retstr);
    if (retstr == "&nbsp;") return "";
    return retstr;
}
