String.prototype.trim = function() { a = this.replace(/^\s+/, ''); return a.replace(/\s+$/, ''); }; var illegalChars = /[^A-Za-z0-9 \'' \-]/; // allow letters, numbers, hyphen, single quotes and underscores $(document).bind('ready', function(){ $("a.event_action").bind('click', function(){return false;}); $('.searchfocus').bind('focus', function(){ $(this).val(''); $(this).css('color','#000'); }); $('.searchfocus').bind('blur', function(){ if(this.value==''){ this.value='Enter keyword(s)'; $(this).css('color',''); } }); $("a.week_action").click(function(){return false;}); $('.search').click(function(){ $('.null-error').remove(); var valuecheck=$('.searchtext').val().trim(); if($('.searchtext').val().trim() == '' || $('.searchtext').val().trim() == 'Enter keyword(s)'){ $(".load-wrapper").append("Please enter keyword(s) to search calendar."); return false; }else if(illegalChars.test(valuecheck)){ $(".load-wrapper").append("Search text can ONLY contain Alpha numeric, hyphens and single quote's."); return false; }else if($('.searchtext').val().trim().length <3) { $(".load-wrapper").append("Search Parameters should have more than 2 characters."); return false; }else{ $("#all-school-event-search .loading").show(); $("#all-school-event-search").ajaxSubmit(function(data){ $('#event-display-layer').html(data); $('#view-all-search-events').html(data); $("#all-school-event-search .loading").hide(); $("a.event_action").click(function(){return false;}); if($("#view-day-events")){$("#view-day-events").hide();} HighlightKeywords($('.searchtext').val().trim()); secondaryContentResize(); }); } }); $('.search-button').click(function(){ $('.null-error').remove(); var valuecheck=$('.searchtext').val().trim(); if($('.searchtext').val().trim() == '' || $('.searchtext').val().trim() == 'Enter keyword(s)'){ $("#school-event-search").append("Please enter keyword(s) to search calendar."); return false; }else if(illegalChars.test(valuecheck)){ $("#school-event-search").append("Search text can ONLY contain Alpha numeric, hyphens and single quote's."); return false; }else if($('.searchtext').val().trim().length <3){ $("#school-event-search").append("Search Parameters should have more than 2 characters."); return false; }else{ $("#school-event-search .loading").show(); $("#school-event-search").ajaxSubmit(function(data){ $('#events-calendar').html(data); $("#school-event-search .loading").hide(); $("a.event_action").click(function(){return false;}); HighlightKeywords($('.searchtext').val().trim()); secondaryContentResize(); }); } }); $('#all-school-event-search').bind('submit', function(){ $('.null-error').remove(); var valuecheck=$('.searchtext').val().trim(); if($('.searchtext').val().trim() == '' || $('.searchtext').val().trim() == 'Enter keyword(s)'){ $(".load-wrapper").append("Please enter keyword(s) to search calendar."); return false; }else if(illegalChars.test(valuecheck)){ $(".load-wrapper").append("Search text can ONLY contain Alpha numeric, hyphens and single quote's."); return false; }else if($('.searchtext').val().trim().length <3){ $(".load-wrapper").append("Search Parameters should have more than 2 characters."); return false; }else{ $("#all-school-event-search .loading").show(); $(this).ajaxSubmit(function(data){ $('#event-display-layer').html(data); $('#view-all-search-events').html(data); $("#all-school-event-search .loading").hide(); $("a.event_action").click(function(){return false;}); if($("#view-day-events")){$("#view-day-events").hide();} HighlightKeywords($('.searchtext').val().trim()); secondaryContentResize(); }); return false; } }); $('#school-event-search').bind('submit', function() { $('.null-error').remove(); var valuecheck=$('.searchtext').val().trim(); if($('.searchtext').val().trim() == '' || $('.searchtext').val().trim() == 'Enter keyword(s)'){ $("#school-event-search").append("Please enter keyword(s) to search calendar."); return false; }else if(illegalChars.test(valuecheck)){ $("#school-event-search").append("Search text can ONLY contain Alpha numeric, hyphens and single quote's."); return false; }else if($('.searchtext').val().trim().length <3) { $("#school-event-search").append("Search Parameters should have more than 2 characters."); return false; }else{ $("#school-event-search .loading").show(); $(this).ajaxSubmit(function(data){ $('#events-calendar').html(data); $("#school-event-search .loading").hide(); $("a.event_action").click(function(){return false;}); HighlightKeywords($('.searchtext').val().trim()); secondaryContentResize(); }); return false; } }); tooltip(); secondaryContentResize(); }); function HighlightKeywords(keywords){ var keywords=keywords.replace(/\s+/g," "); var re=/\s/; splitkey = keywords.split(re); var el = $("#searched-events .calendar-details h3, #searched-events .calendar-details p, #school-searched-events .calendar-details h2, #school-searched-events .calendar-details p"); $(splitkey).each(function(){ var pattern = new RegExp("("+this+")", ["gi"]); var rs = "$1"; if($('.no-results').length == 0){ el.each(function(){ $(this).html($(this).html().replace(pattern, rs)) }); } }); } function secondaryContentResize(){ $('#secondary-content').height(''); if(($('#calendar-wrapper').height())>($('#secondary-content').height())){ $('#secondary-content').height($('#calendar-wrapper').height()); } } function event_action(schoolUrlName, googleId, eventid){ document.calendarForm.googleId.value = googleId; document.calendarForm.eventId.value = eventid; actionurl = document.getElementById('calendarForm').getAttribute('action'); actionurl = actionurl.slice( actionurl.lastIndexOf('/') ); if (actionurl == '/') { url = document.getElementById('calendarForm').getAttribute('action')+schoolUrlName; }else{ url = document.getElementById('calendarForm').getAttribute('action'); } document.getElementById('calendarForm').setAttribute('action', url); document.calendarForm.submit(); } function week_tag_action(actiondate){ document.weekNavigationForm.actionDate.value = actiondate; document.weekNavigationForm.submit(); } this.tooltip = function(){ /* CONFIG */ xOffset = 10; yOffset = 20; // these 2 variable determine popup's distance from the cursor // you might want to adjust to get the right result /* END CONFIG */ $("#event-display-layer a").hover(function(e){ this.t = this.title; this.title = ""; $("body").append("

"+ this.t +"

"); $("#tooltip") .css("top",(e.pageY - xOffset) + "px") .css("left",(e.pageX + yOffset) + "px"); if($("#tooltip").width()>200){$("#tooltip").width("200px")}; $("#tooltip").fadeIn("fast"); }, function(){ this.title = this.t; $("#tooltip").remove(); }); $("#event-display-layer a").mousemove(function(e){ $("#tooltip") .css("top",(e.pageY - xOffset) + "px") .css("left",(e.pageX + yOffset) + "px"); }); };