From eaa63cc5aabbc4481d38f6d20688671e11760372 Mon Sep 17 00:00:00 2001 From: manson Date: Fri, 6 Mar 2015 12:34:54 +0800 Subject: [PATCH] enable calendar --- app/templates/nccu/assets/javascripts/app.js | 184 +++++++++---------- 1 file changed, 92 insertions(+), 92 deletions(-) diff --git a/app/templates/nccu/assets/javascripts/app.js b/app/templates/nccu/assets/javascripts/app.js index 2f84fbc..15ff790 100644 --- a/app/templates/nccu/assets/javascripts/app.js +++ b/app/templates/nccu/assets/javascripts/app.js @@ -177,104 +177,104 @@ $(document).ready(function($) { init(); - // getXmlFeedForCalendar(); + getXmlFeedForCalendar(); }); }(jQuery)); -// var getXmlFeedForCalendar = function(){ -// var template = "
  • /06
  • ", -// month = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec']; -// $.ajax({ -// "url" : "/nccu_calendar.xml", -// "dataType" : "xml", -// "type" : "get" -// }).done(function(data){ -// xmldoc = $(data); -// xmldoc.find("entry").each(function(i,entry){ -// var el = $(entry), -// li = $(template), -// summary_text = el.find("summary").text(), -// indexA = summary_text.indexOf("-"), -// indexB = summary_text.indexOf(" "), -// indexC = summary_text.indexOf("/"), -// startDate_text = null, -// startMon_text = null, -// endDate_text = null, -// time_text = null; -// //清除前後空白字元 -// summary_text = jQuery.trim(summary_text); -// //篩選標題 -// if (summary_text.length == 31) { -// startDate_text = summary_text.slice(0, indexA); -// startMon_text = startDate_text.slice((indexC+1), (indexC+3)); -// startDay_text = startDate_text.slice(7); -// endDate_text = summary_text.slice((indexA+1), indexB); -// time_text = summary_text.slice((indexB+1)); -// } else { -// startDate_text = summary_text.slice(0, indexB); -// startMon_text = startDate_text.slice((indexC+1), (indexC+3)); -// startDay_text = startDate_text.slice(7); -// endDate_text = ''; -// time_text = summary_text.slice((indexB+1)); -// } -// if(startMon_text.slice(0, 1) == '0'){ -// console.log("slice") -// startMon_text = month[startMon_text.slice(1)-1]; -// } else { -// console.log("without slice") -// startMon_text = month[startMon_text-1]; -// } +var getXmlFeedForCalendar = function(){ + var template = "
  • /06
  • ", + month = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec']; + $.ajax({ + "url" : "/nccu_calendar.xml", + "dataType" : "xml", + "type" : "get" + }).done(function(data){ + xmldoc = $(data); + xmldoc.find("entry").each(function(i,entry){ + var el = $(entry), + li = $(template), + summary_text = el.find("summary").text(), + indexA = summary_text.indexOf("-"), + indexB = summary_text.indexOf(" "), + indexC = summary_text.indexOf("/"), + startDate_text = null, + startMon_text = null, + endDate_text = null, + time_text = null; + //清除前後空白字元 + summary_text = jQuery.trim(summary_text); + //篩選標題 + if (summary_text.length == 31) { + startDate_text = summary_text.slice(0, indexA); + startMon_text = startDate_text.slice((indexC+1), (indexC+3)); + startDay_text = startDate_text.slice(7); + endDate_text = summary_text.slice((indexA+1), indexB); + time_text = summary_text.slice((indexB+1)); + } else { + startDate_text = summary_text.slice(0, indexB); + startMon_text = startDate_text.slice((indexC+1), (indexC+3)); + startDay_text = startDate_text.slice(7); + endDate_text = ''; + time_text = summary_text.slice((indexB+1)); + } + if(startMon_text.slice(0, 1) == '0'){ + console.log("slice") + startMon_text = month[startMon_text.slice(1)-1]; + } else { + console.log("without slice") + startMon_text = month[startMon_text-1]; + } -// li.find("a").text(el.find("title").text()).attr("href", el.find("link").attr("href")); -// li.find(".mon").text(startMon_text); -// li.find(".day").text(startDay_text); -// li.find(".event_info").text("時間:" + time_text); -// $("#nccu_event_calendar").append(li); -// }) -// bindHandler(); -// }) -// var $next = $('.events .links_next'), -// $prev = $('.events .links_prev'); -// var bindHandler = function(){ -// var page_number = 1, -// total_pages = Math.ceil($("#nccu_event_calendar li").length / 3); -// showLis(page_number, total_pages); -// $next.on("click", function(){ -// if(page_number < total_pages){ -// page_number++; -// showLis(page_number,total_pages); -// } -// return false; -// }); -// $prev.on("click", function(){ -// if(page_number > 1){ -// page_number--; -// showLis(page_number,total_pages); -// } -// return false; -// }); -// } + li.find("a").text(el.find("title").text()).attr("href", el.find("link").attr("href")); + li.find(".mon").text(startMon_text); + li.find(".day").text(startDay_text); + li.find(".event_info").text("時間:" + time_text); + $("#nccu_event_calendar").append(li); + }) + bindHandler(); + }) + var $next = $('.events .links_next'), + $prev = $('.events .links_prev'); + var bindHandler = function(){ + var page_number = 1, + total_pages = Math.ceil($("#nccu_event_calendar li").length / 3); + showLis(page_number, total_pages); + $next.on("click", function(){ + if(page_number < total_pages){ + page_number++; + showLis(page_number,total_pages); + } + return false; + }); + $prev.on("click", function(){ + if(page_number > 1){ + page_number--; + showLis(page_number,total_pages); + } + return false; + }); + } -// var showLis = function(page_number,total_pages){ -// var $ul = $("#nccu_event_calendar"), -// start = (page_number - 1) * 3, -// end = (page_number * 3) - 1; -// $ul.find("li").hide(); -// for(var i = start; i <= end; i++){ -// $ul.find("li").eq(i).show(); -// } -// if(page_number == 1 && total_pages > 1){ -// $prev.addClass("disabled"); -// $next.removeClass("disabled"); -// }else if(page_number > 1 && page_number < total_pages){ -// $prev.removeClass("disabled"); -// $next.removeClass("disabled"); -// }else if(page_number == total_pages){ -// $next.addClass("disabled"); -// } -// } + var showLis = function(page_number,total_pages){ + var $ul = $("#nccu_event_calendar"), + start = (page_number - 1) * 3, + end = (page_number * 3) - 1; + $ul.find("li").hide(); + for(var i = start; i <= end; i++){ + $ul.find("li").eq(i).show(); + } + if(page_number == 1 && total_pages > 1){ + $prev.addClass("disabled"); + $next.removeClass("disabled"); + }else if(page_number > 1 && page_number < total_pages){ + $prev.removeClass("disabled"); + $next.removeClass("disabled"); + }else if(page_number == total_pages){ + $next.addClass("disabled"); + } + } -// } +} var packagesJS = function() { $('.open-mune').on('click', function(event) {