1/** 2 * Append jQuery file (after content run script) for FSY 4.0 3 * @template Ocean 4 * @version 1.2 5 * @author Wikinggruppen 6 * @url http://www.wikinggruppen.se/ 7 */ 8 9// Append Variables 10var APPEND_APPLI1 = 1001; 11var APPEND_APPLI2 = 1002; 12var APPEND_APPLI3 = 1003; 13var APPEND_APPLI4 = 1004; 14 15var initAppli1; 16var initAppli2; 17var initAppli3; 18var initAppli4; 19 20var SelectedDates = {}; 21var datePic; 22 23$.each(FSY.calendarEvents, function(eventIndex,eventData){ 24 eventTime = strtotime(eventData.start); 25 eventDate = strtotime(date('Y-m-d', eventTime)); 26 eventTimeEnd = strtotime(eventData.end); 27 eventDateEnd = strtotime(date('Y-m-d', eventTimeEnd)); 28 var test1 = date('Y-m-d', eventTime); 29 var test2 = date('Y-m-d', eventTimeEnd); 30 var currentDate = new date('Y-m-d', eventData.start); 31 SelectedDates[eventDate] = eventDate; 32 var startDate = new Date(eventData.start); 33 var endDate = new Date(eventData.end); 34 startDate.setHours(0,0,0,0); 35 endDate.setHours(0,0,0,0); 36 currentDate = startDate; 37 while (currentDate <= endDate) { 38 var newDate = Date.parse(currentDate)/1000; 39 SelectedDates[newDate] = newDate; 40 currentDate.setDate(currentDate.getDate() + 1); 41 } 42}); 43 44$.inp = function(){ 45 $("textarea").each(function(){ $(this).val($(this).val()); }); 46 $("input").each(function(){ $(this).val($(this).val()); }); 47}; 48 49$.fbx = function(){ 50 $(".js-fancybox--appear").each(function(){ 51 if($(this).data('appearurl')) { 52 $(this).prop('href', $(this).data('appearurl')); 53 $(this).addClass('js-fancybox'); 54 } 55 }); 56 $(".l-content a img").addClass('js-fancybox--protimg'); 57 $(".l-content img").each(function(){ 58 if(!$(this).hasClass('js-fancybox--protimg')) { 59 $(this).wrap( "<a href='" + $(this).prop('src') + "' class='js-fancybox'></div>" ); 60 } 61 }); 62 $(".js-fancybox").fancybox({ 63 openEffect : 'elastic', 64 closeEffect : 'elastic', 65 nextEffect : 'none', 66 prevEffect : 'none', 67 openSpeed : 40, 68 closeSpeed : 40, 69 helpers : { 70 title : { 71 type : 'inside' 72 } 73 }, 74 tpl: { 75 next: '<a title="" class="fancybox-nav fancybox-next"><span></span></a>', 76 prev: '<a title="" class="fancybox-nav fancybox-prev"><span></span></a>' 77 } 78 }); 79 $(document).ready(function(){ 80 $(".js-fancybox[data-autopopup='1']").click(); 81 }); 82}; 83 84$.nvp = function(mode, ref){ 85 86 switch(mode) { 87 88 case APPEND_APPLI1: 89 $(".mobile-nav-button").click(function(){ 90 if($(this).data('navorder') == 'closed') { 91 $(".mobile-navigation").slideUp('fast'); 92 $(this).removeClass('fa-times-circle').addClass('fa-bars'); 93 $(this).data('navorder', 'open'); 94 } else { 95 $(this).data('navorder', 'closed'); 96 $(this).removeClass('fa-bars').addClass('fa-times-circle'); 97 $(".mobile-navigation").slideDown('fast'); 98 } 99 }); 100 $(".mobile-search-button").click(function(){ 101 if($(this).data('navorder') == 'closed') { 102 $(".mobile-search").hide(); 103 $(".mobile-current-page").show(); 104 $(this).removeClass('fa-search-minus').addClass('fa-search'); 105 $(this).data('navorder', 'open'); 106 } else { 107 $(".mobile-search").show(); 108 $(".mobile-current-page").hide(); 109 $(this).removeClass('fa-search').addClass('fa-search-minus'); 110 $("#mobilesearchquery").focus().val($("#mobilesearchquery").val()); 111 $(this).data('navorder', 'closed'); 112 } 113 }); 114 i = 0; 115 $(".tab-nav .nav li").each(function(){ 116 i++; 117 $(this).data('tabnav', i).click(function(){ 118 $.nvp(APPEND_APPLI2, $(this).data('tabnav')); 119 }); 120 }); 121 i = 0; 122 $(".tab-nav .tab-nav-body").each(function(){ 123 i++; 124 $(this).data('tabnav', i); 125 }); 126 $(".cb-nav .cb").click(function(){ 127 $(".cb-navsel").addClass('is-hidden'); 128 $(".cb-navsel[data-navsel='" + $(this).prop('id') + "']").removeClass('is-hidden'); 129 }); 130 break; 131 132 case APPEND_APPLI2: 133 134 if(ref) { 135 navItem = null; 136 bodyItem = null; 137 $(".tab-nav .nav li").each(function(){ 138 if($(this).data('tabnav') == ref) { 139 navItem = $(this); 140 } 141 }); 142 $(".tab-nav .tab-nav-body").each(function(){ 143 if($(this).data('tabnav') == ref) { 144 bodyItem = $(this); 145 } 146 }); 147 if(navItem && bodyItem) { 148 $(".tab-nav .nav li").removeClass('selected'); 149 $(".tab-nav .tab-nav-body").hide(); 150 $(navItem).addClass('selected'); 151 $(bodyItem).show(); 152 } 153 } 154 155 break; 156 157 } 158 159}; 160 161$.dpc = function(mode){ 162 163 switch(mode) { 164 165 case APPEND_APPLI1: 166 167 if($(".calendar-module").get(0)) { 168 169 $.datepicker.regional[FSY.langCode] = { 170 closeText: FSY.localePhrases.calendarCloseText, 171 prevText: FSY.localePhrases.calendarPrevText, 172 nextText: FSY.localePhrases.calendarNextText, 173 currentText: FSY.localePhrases.calendarCurrentText, 174 monthNames: FSY.localePhrases.calendarMonthNames, 175 monthNamesShort: FSY.localePhrases.calendarMonthNamesShort, 176 dayNamesShort: FSY.localePhrases.calendarDayNamesShort, 177 dayNames: FSY.localePhrases.calendarDayNames, 178 weekHeader: FSY.localePhrases.calendarWeekHeader, 179 dateFormat: FSY.localePhrases.calendarDateFormat, 180 firstDay: FSY.calendarConfiguration.firstDay, 181 showWeek: FSY.calendarConfiguration.weekNumbers, 182 isRTL: false, 183 showMonthAfterYear: false 184 }; 185 186 $.datepicker.regional[FSY.langCode].dayNamesMin = (FSY.calendarConfiguration.weekendsView) ? FSY.localePhrases.calendarDayNamesMin : FSY.localePhrases.calendarDayNamesShort; 187 188 $(".calendar-module").show(); 189 $(".datepicker-calendar").datepicker($.extend({},$.datepicker.regional[FSY.langCode],{ 190 beforeShowDay: function(currentDate) { 191 currentTime = (Date.parse(currentDate) / 1000); 192 var Highlight = SelectedDates[currentTime]; 193 if (Highlight) { 194 return [true, "datePickerHighlighted", date('Y-m-d', currentTime)]; 195 } else { 196 return [true, 'datePickerUnHighlighted', date('Y-m-d', currentTime)]; 197 } 198 }, 199 onSelect: function(dateText) { 200 $.dpc(APPEND_APPLI4); 201 } 202 })); 203 204 $(".datetimepicker-calendar").datetimepicker(); 205 206 $(".datepicker-calendar-title .calendar-pmonth").click(function(){ 207 208 var d = $(".datepicker-calendar").datepicker("getDate"); 209 var x = (d.getMonth() == 0) ? new Date(d.getFullYear() - 1, 11, 1) : new Date(d.getFullYear(), d.getMonth() - 1, 1); 210 211 $(".datepicker-calendar").datepicker("setDate", x); 212 $.dpc(APPEND_APPLI2); 213 214 initAppli4 = false;
215 $.dpc(APPEND_APPLI4); 216 217 return false; 218 219 }); 220 221 $(".datepicker-calendar-title .calendar-nmonth").click(function(){ 222 223 var d = $(".datepicker-calendar").datepicker("getDate"); 224 var x = (d.getMonth() == 11) ? new Date(d.getFullYear() + 1, 0, 1) : new Date(d.getFullYear(), d.getMonth() + 1, 1); 225 226 $(".datepicker-calendar").datepicker("setDate", x); 227 $.dpc(APPEND_APPLI2); 228 229 initAppli4 = false; 230 $.dpc(APPEND_APPLI4); 231 232 return false; 233 234 }); 235 236 $.dpc(APPEND_APPLI2); 237 $.dpc(APPEND_APPLI4); 238 239 } 240 241 break; 242 243 case APPEND_APPLI2: 244 245 var d = $(".datepicker-calendar").datepicker("getDate"); 246 var dMonthName = $.datepicker.regional[FSY.langCode]['monthNames'][d.getMonth()]; 247 var dYear = d.getFullYear(); 248 249 $(".datepicker-calendar-title .module-title h5").html(dMonthName + ' ' + dYear); 250 251 break; 252 253 case APPEND_APPLI3: 254 $(".header-dateholder").html('<div class="header-dateholder-max">' + $(".header-dateholder").html() + '</div><div class="header-dateholder-min">' + $(".header-dateholder").data('min') + '</div>'); 255 break; 256 257 case APPEND_APPLI4: 258 259 if(!initAppli4) { 260 eventsHTML = ''; 261 currentDate = $(".datepicker-calendar").datepicker('getDate'); 262 currentTime = (Date.parse(currentDate) / 1000); 263 $.each(FSY.calendarEvents, function(eventIndex,eventData){ 264 if(date('Y-m', currentTime) == date('Y-m', strtotime(eventData.start)) && date('Y-m', currentTime) == date('Y-m', strtotime(eventData.end))) { 265 eventsHTML += '<li class="event"><a class="calevent" href="#" data-eid="' + eventData.id + '">' + eventData.title + '</a></li>'; 266 } 267 }); 268 $(".calendar-module .datepicker-eventview").removeClass('is-hidden'); 269 $(".calendar-module .datepicker-eventview .title span").html(FSY.localePhrases.calendarMonthNames[(date('n', currentTime)-1)] + ' ' + date('Y', currentTime)); 270 if(eventsHTML) { 271 $(".calendar-module .datepicker-eventview .events").removeClass('is-hidden').html(eventsHTML); 272 } else { 273 $(".calendar-module .datepicker-eventview .events").removeClass('is-hidden').html('<div class="gray-text">' + FSY.localePhrases.calendarNoDateEvents + '</div>'); 274 } 275 276 $(".calendar-module .datepicker-eventview .events .calevent").click(function(){ 277 $.popCalEvent($(this).data('eid')); 278 return false; 279 }); 280 initAppli4 = true; 281 } else { 282 eventsHTML = ''; 283 currentDate = $(".datepicker-calendar").datepicker('getDate'); 284 currentTime = (Date.parse(currentDate) / 1000); 285 $.each(FSY.calendarEvents, function(eventIndex,eventData){ 286 if(date('Y-m-d', currentTime) >= date('Y-m-d', strtotime(eventData.start)) && date('Y-m-d', currentTime) <= date('Y-m-d', strtotime(eventData.end))) { 287 eventsHTML += '<li class="event"><a class="calevent" href="#" data-eid="' + eventData.id + '">' + eventData.title + '</a></li>'; 288 } 289 }); 290 $(".calendar-module .datepicker-eventview").removeClass('is-hidden'); 291 $(".calendar-module .datepicker-eventview .title span").html(date('j', currentTime) + ' ' + FSY.localePhrases.calendarMonthNamesShort[(date('n', currentTime)-1)].toLowerCase() + ' ' + date('Y', currentTime)); 292 if(eventsHTML) { 293 $(".calendar-module .datepicker-eventview .events").removeClass('is-hidden').html(eventsHTML); 294 } else { 295 $(".calendar-module .datepicker-eventview .events").removeClass('is-hidden').html('<div class="gray-text">' + FSY.localePhrases.calendarNoDateEvents + '</div>'); 296 } 297 298 $(".calendar-module .datepicker-eventview .events .calevent").click(function(){ 299 $.popCalEvent($(this).data('eid')); 300 return false; 301 }); 302 } 303 break; 304 305 } 306 307}; 308 309function getTheDamnDate(datetime){ 310 var year; 311 var month; 312 var day; 313 314 var hour; 315 var minute; 316 317 var theDate = datetime; 318 319 year = theDate.substr(0,4); 320 month = theDate.substr(5,2); 321 day = theDate.substr(8,2); 322 323 hour = theDate.substr(11,2); 324 minute = theDate.substr(14,2); 325 second = "00"; 326 return [year,month,day,hour,minute,second]; 327 328} 329 330$.popCalEvent = function(eid){ 331 332 eventData = null; 333 334 $.each(FSY.calendarEvents, function(ei,ed){ 335 if(ed.id == eid) { 336 eventData = ed; 337 } 338 }); 339 340 if(eventData) {
341 start = getTheDamnDate(eventData.start); 342 343 startDateTime = new Date (start[0],(start[1] - 1),start[2],start[3],start[4],start[5]); 344 345 end = getTheDamnDate(eventData.end); 346 endDateTime = new Date (end[0],(end[1] - 1),end[2],end[3],end[4],end[5]); 347 eventDateTitle = ''; 348 349 eventStartDate = date('Y-m-d', startDateTime); 350 eventStartTime = date('H:i:s', startDateTime); 351 eventEndDate = date('Y-m-d', endDateTime); 352 eventEndTime = date('H:i:s', endDateTime); 353 eventDiffDates = (eventEndDate != eventStartDate); 354 if(eventData.allDay) { 355 eventDateTitle = eventStartDate; 356 if(eventDiffDates) { 357 eventDateTitle += ' - ' + eventEndDate; 358 } 359 } else { 360 if(eventDiffDates) { 361 eventDateTitle = eventStartDate + ' ' + eventStartTime + ' - ' + eventEndDate + ' ' + eventEndTime; 362 } else { 363 eventDateTitle = eventStartDate + ' ' + eventStartTime + '-' + eventEndTime; 364 } 365 } 366 367 $("#fsycalevent .event-title").html(eventData.title); 368 $("#fsycalevent .event-datetitle span").html(eventDateTitle); 369 if(eventData.content) { 370 $("#fsycalevent .event-content").removeClass('is-hidden').html(eventData.content); 371 $("#fsycalevent .event-no-content").addClass('is-hidden'); 372 } else { 373 $("#fsycalevent .event-content").addClass('is-hidden'); 374 $("#fsycalevent .event-no-content").removeClass('is-hidden'); 375 } 376 377 $.fancybox({ href: "#fsycalevent", 'width': '500px', 'height': 'auto', 'autoSize': false }); 378 379 } 380 381}; 382 383$.whr = function(mode){ 384 switch(mode) { 385 case APPEND_APPLI1: 386 $(window).resize(function(){ $.whr(APPEND_APPLI2); }); 387 for(t=0;t<=2000;t+=50) { 388 setTimeout(function() { 389 $.whr(APPEND_APPLI2); 390 }, t); 391 } 392 break; 393 case APPEND_APPLI2: 394 wh = $(window).height(); 395 th = ($(".l-header").height() + $(".l-footer").height() + $(".preview-theme-notice").height() + 40); 396 /* if($(".user-dp").get(0)) { 397 th += ($(".user-dp").height()+2); 398 } */ 399 if($(".l-previewpopup").get(0)) { 400 th += ($(".l-previewpopup").height() + 25); 401 } 402 wr = (wh-th); 403 $(".l-content").css('min-height', wr + 'px'); 404 break; 405 } 406}; 407 408// Window size functions 409$.whr(APPEND_APPLI1); 410 411// Date functions 412$.dpc(APPEND_APPLI1); 413$.dpc(APPEND_APPLI3); 414 415// NavTab functions 416$.nvp(APPEND_APPLI1, 0); 417$.nvp(APPEND_APPLI2, 1); 418 419// Fancybox 420$.fbx(); 421 422// Input/Textarea fix 423$.inp();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.