1/* 2Date: 18-05-2018 3*/ 4var KAUMUDI = KAUMUDI || {}; 5$(document).ready(function () { 6 KAUMUDI.EPAPER.init(); 7}); 8KAUMUDI.EPAPER = (function () { 9 /*************** 10 *Private Region* 11 ****************/ 12 var web_url = '', areaimg_url = '', hostAddress = window.location.origin; 13 function alertSignIn() { 14 if ((typeof is_newstrack !== 'undefined' && is_newstrack) || (typeof reqProduct !== 'undefined' && reqProduct !== '')) { 15 return false; 16 } 17 window.location.href = window.location.origin + '/epaper/'; 18 } 19 function onDateSelect(date) { 20 var formatDte = moment(date, "DD/MM/YYYY").format("MMMM DD, YYYY"), 21 pathDate = moment(date, "DD/MM/YYYY").format("DD-MM-YYYY"); 22 $("#epDateDialog").dialog("close"); 23 $(".audio-btn").addClass('hide'); 24 $(".video-btn").addClass('hide'); 25 $("#audio-wrap").find('audio')[0].pause(); 26 $("#audio-wrap").removeClass('sactive'); 27 $("#ep_dte_text").text(formatDte); 28 $("#ep_dte_text").attr("data-dte", moment(date, "DD/MM/YYYY").format("DD-MM-YYYY")); 29 var formData = new FormData(); 30 formData.append("prdt_code", $("#ep_prdt").attr("data-pdt")); 31 formData.append("ep_date", formatDte); 32 if (reqEdtn) { 33 formData.append("edition", reqEdtn); 34 } 35 KAUMUDI.utils.showLoader(); 36 function successCallBack(data) { 37 $("#no-edition").addClass('hide'); 38 $("#epEditionDialog").html(data.editions); 39 if (data.editions_list && data.editions_list[0]) { 40 if (!reqEdtn) { 41 $("#ep_edition_text").text(data.editions_list[0]["name"]); 42 $("#ep_edition").attr("data-edt", data.editions_list[0]["code"]); 43 $("#ep_edition").find('.dropdown-menu').html(data.edts_html); 44 } else { 45 $("#ep_edition").find('.dropdown-menu').html(data.edts_html); 46 if ($('#ep_edition').attr("data-edt") != reqEdtn) { 47 $("li[data-edt='" + reqEdtn + "']").click(); 48 } 49 } 50 setAudioURL() 51 } else { 52 $("#ep_edition_text").text("No Editions"); 53 $("#ep_edition").find('.dropdown-menu').html("<li>No Editions Exists</li>"); 54 $("#no-edition").removeClass('hide'); 55 $("#ep_audio_button").attr("href", "#"); 56 } 57 setPagesImgs(data); 58 } 59 function errorStatus(textStatus, errorThrown) { 60 KAUMUDI.utils.hideLoader(); 61 } 62 KAUMUDI.utils.sendAjaxPost('EpaperController/GetEditionsPages' + (reqEdtn || (typeof is_newstrack !== 'undefined' && is_newstrack) ? "?pr=1" : ""), formData, 'json', successCallBack, errorStatus); 63 } 64 function setWebNews(newsId, scrollNews) { 65 web_url = ''; 66 $(".audio-btn").addClass('hide'); 67 $(".video-btn").addClass('hide'); 68 $("#audio-wrap").removeClass('sactive'); 69 $("#audio-wrap").find('audio')[0].pause(); 70 var formData = new FormData(); 71 formData.append("news_id", newsId); 72 function successCallBack(data) { 73 web_url = data.web_url; 74 $("[data-network]").attr("data-url", web_url ? encodeURI(web_url + '&s_im=' + areaimg_url) : encodeURI(areaimg_url)); 75 $("[data-network]").attr("data-image", encodeURI(hostAddress + areaimg_url)); 76 var hasNewstrackAccess = (typeof reqEdtn !== 'undefined' && reqEdtn !== '') || (typeof is_newstrack !== 'undefined' && is_newstrack); 77 if (hasNewstrackAccess) { 78 if (web_url && web_url.indexOf('newstrack.live') === -1) { 79 web_url = "https://newstrack.live/Epaper/EpaperPreview?g_url=" + web_url + "&g_nt=1"; 80 } 81 } 82 $("#web_link").attr("data-url", web_url); 83 if (data.title) { 84 $("#no-web-news").addClass('hide'); 85 $("#news_head").text(data.title); 86 $("#news_pub").html(data.published_on); 87 $("#news_desc").html(data.news_desc); 88 $(".nws_con").show(); 89 if (data.audio_path) { 90 $("#audio-wrap").find('audio').attr("src", data.audio_path); 91 $(".audio-btn").removeClass('hide'); 92 } else { 93 $(".audio-btn").addClass('hide'); 94 } 95 if (data.video_id) { 96 $(".video-btn").attr("data-vid", data.video_id); 97 $(".video-btn").removeClass('hide'); 98 } else { 99 $(".video-btn").addClass('hide'); 100 } 101 } else { 102 setNoWebNews(); 103 } 104 } 105 function errorStatus(textStatus, errorThrown) { 106 KAUMUDI.utils.hideLoader(); 107 } 108 KAUMUDI.utils.sendAjaxPost('EpaperController/GetWebNews' + (reqEdtn || (typeof is_newstrack !== 'undefined' && is_newstrack) ? "?pr=1" : ""), formData, 'json', successCallBack, errorStatus); 109 } 110 function setSelectedAreaImg(coords, shape, scrollNews) { 111 var pageImg = $("#epaper_img").find('#epaper_pge_img').attr('src');
112 var coordinates = coords ? coords.replace(/,/g, "_") : "0"; 113 var imgPathPieces = pageImg ? pageImg.split("/") : []; 114 if (imgPathPieces) { 115 imgPathPieces[imgPathPieces.length - 1] = "images/" + shape + "_" + coordinates + '.jpg'; 116 areaimg_url = imgPathPieces.join("/"); 117 $("#img_view").html('<img src="' + areaimg_url + '" onerror="KAUMUDI.EPAPER.setNoAreaImg()"/>'); 118 $("[data-network]").attr("data-url", web_url ? encodeURI(web_url + '&s_im=' + encodeURI(areaimg_url)) : encodeURI(areaimg_url)); 119 $("[data-network]").attr("data-image", encodeURI(hostAddress + areaimg_url)); 120 } 121 $("#img_view").removeClass('hide'); 122 $("#text_view").addClass('hide'); 123 $("#img_view_btn").addClass('hide'); 124 $("#txt_view_btn").removeClass('hide'); 125 if (scrollNews) { 126 var logoTop = $("#ep_prdt").attr("data-pdt") == 'FSH' ? 190 : 148; 127 $('html, body').animate({ 128 scrollTop: ($("#sel_disp").offset().top - logoTop) 129 }, 1500); 130 } 131 } 132 function setAvailableDateEdtPage(prdt, sp_id) { 133 $(".audio-btn").addClass('hide'); 134 $("#audio-wrap").removeClass('sactive'); 135 $("#audio-wrap").find('audio')[0].pause(); 136 var formData = new FormData(); 137 formData.append("prdt", prdt); 138 formData.append("sp_id", sp_id); //special page id 139 KAUMUDI.utils.showLoader(); 140 function successCallBack(data) { 141 $("#no-edition").addClass('hide'); 142 $("#ep_dte_text").text(data.ep_date ? moment(data.ep_date["day"] + "/" + data.ep_date["month"] + "/" + data.ep_date["year"], "DD/MM/YYYY").format("MMMM DD, YYYY") : moment().format("MMMM DD, YYYY")); 143 if (data.editions_list && data.editions_list[0]) { 144 $("#ep_edition_text").text(data.editions_list[0]["name"]); 145 $("#ep_edition").attr("data-edt", data.editions_list[0]["code"]); 146 $("#ep_edition").find('.dropdown-menu').html(data.edts_html); 147 } else { 148 $("#ep_edition_text").text("No Editions"); 149 $("#ep_edition").find('.dropdown-menu').html("<li>No Editions Exists</li>"); 150 $("#no-edition").removeClass('hide'); 151 } 152 setPagesImgs(data); 153 } 154 function errorStatus(textStatus, errorThrown) { 155 KAUMUDI.utils.hideLoader(); 156 } 157 KAUMUDI.utils.sendAjaxPost('EpaperController/GetAvailableEdition' + (reqEdtn || (typeof is_newstrack !== 'undefined' && is_newstrack) ? "?pr=1" : ""), formData, 'json', successCallBack, errorStatus); 158 } 159 function setPages() { 160 $(".audio-btn").addClass('hide'); 161 $("#audio-wrap").removeClass('sactive'); 162 $("#audio-wrap").find('audio')[0].pause(); 163 var formData = new FormData(); 164 formData.append("prdt_code", $("#ep_prdt").attr("data-pdt")); 165 formData.append("ep_date", $("#ep_dte_text").text()); 166 formData.append("edition", $("#ep_edition").attr("data-edt")); 167 KAUMUDI.utils.showLoader(); 168 function successCallBack(data) { 169 $("#no-edition").addClass('hide'); 170 setPagesImgs(data); 171 } 172 function errorStatus(textStatus, errorThrown) { 173 KAUMUDI.utils.hideLoader(); 174 } 175 KAUMUDI.utils.sendAjaxPost('EpaperController/GetEditionsPages' + (reqEdtn || (typeof is_newstrack !== 'undefined' && is_newstrack) ? "?pr=1" : ""), formData, 'json', successCallBack, errorStatus); 176 } 177 function setMapImgHtml(page) { 178 $(".audio-btn").addClass('hide'); 179 $("#audio-wrap").removeClass('sactive'); 180 $("#audio-wrap").find('audio')[0].pause(); 181 var formData = new FormData(); 182 formData.append("prdt_code", $("#ep_prdt").attr("data-pdt")); 183 formData.append("ep_date", $("#ep_dte_text").text()); 184 formData.append("edition", $("#ep_edition").attr("data-edt") || "EPR"); 185 formData.append("page", page); 186 KAUMUDI.utils.showLoader(); 187 function successCallBack(mapimg_html) { 188 $("#no-edition").addClass('hide'); 189 $("#epaper_img").html(mapimg_html); 190 setRelHeightCoords(); 191 $('#epaper_pge_img').maphilight(); 192 setNewsListHtml(); 193 var actCoords = $('area:first').attr("actcoords"); 194 setSelectedAreaImg(actCoords ? actCoords : $('area:first').attr("coords"), $('area:first').attr("shape"), false); 195 setWebNews($('area:first').attr("newsid"), false); 196 setMetaPageTitle(); 197 setGAPageViews(); // Google Analytics 198 } 199 function errorStatus(textStatus, errorThrown) { 200 KAUMUDI.utils.hideLoader(); 201 } 202 KAUMUDI.utils.sendAjaxPost('EpaperController/GetImageMapHtml', formData, 'html', successCallBack, errorStatus); 203 } 204 function setNoWebNews() { 205 $(".audio-btn").addClass('hide'); 206 $("#audio-wrap").removeClass('sactive'); 207 $("#audio-wrap").find('audio')[0].pause(); 208 $("#news_head").text(""); 209 $("#news_desc").html(""); 210 $("#news_pub").html(""); 211 $(".nws_con").hide(); 212 $("#no-web-news").removeClass('hide'); 213 } 214 function setPagesImgs(data) { 215 216 if (data.pages_list && data.pages_list[0]) { 217 var pageName = data.pages_list[0].split("_"); 218 $("#ep_page_text").text(parseInt(pageName[0]) + ' ' + pageName[1]); 219 $("#ep_page").attr("data-page", data.pages_list[0]); 220 $("#ep_page").find('.dropdown-menu').html(data.pges_html); 221 $(".pges-box").html(data.pges_thumb_html); 222 $(".pge-title").text($("#ep_edition_text").text()); 223 $("#epaper_img").html(data.mapimg_html); 224 setRelHeightCoords(); 225 setNewsListHtml(); 226 setMetaPageTitle(); 227 setGAPageViews(); 228 } else { 229 $("#ep_page_text").text("No Pages"); 230 $("#ep_page").find('.dropdown-menu').html("<li>No Pages Exists</li>"); 231 $("#no-edition").removeClass('hide'); 232 KAUMUDI.utils.hideLoader(); 233 } 234 $('#epaper_pge_img').maphilight(); 235 var actCoords = $('area:first').attr("actcoords"); 236 setSelectedAreaImg(actCoords ? actCoords : $('area:first').attr("coords"), $('area:first').attr("shape"), false); 237 setWebNews($('area:first').attr("newsid"), false); 238 setAudioURL(); 239 } 240 function getImgHtml() { 241 $(".epaper_view").css({ "overflow-x": "visible", "overflow-y": "visible" }); 242 html2canvas([document.getElementById('news_cont')], { 243 onrendered: function (canvas) { 244 document.body.appendChild(canvas); 245 var ctx = canvas.getContext("2d"); 246 ctx.fillStyle = "#FFF"; 247 ctx.fill(); 248 var data = canvas.toDataURL('image/png'); 249 $(".epaper_view").attr("style", "overflow-x:hidden;overflow-y:auto;"); 250 var a = document.createElement('a'); 251 // toDataURL defaults to png, so we need to request a jpeg, then convert for file download. 252 a.href = canvas.toDataURL("image/png").replace("image/png", "image/octet-stream"); 253 a.download = 'keralakaumudi.jpg'; 254 a.click(); 255 canvas.remove(); 256 } 257 }); 258 } 259 260 function setNewsListHtml() { 261 var formData = new FormData(), 262 newsIds = []; 263 $(".nws-title").text($("#ep_page_text").text()); 264 $("#epaper_img").find("area").each(function () { 265 newsIds.push($(this).attr('newsid')); 266 }); 267 formData.append("news_ids", JSON.stringify(newsIds)); 268 KAUMUDI.utils.showLoader(); 269 function successCallBack(news_html) { 270 KAUMUDI.utils.hideLoader(); 271 $('.nws-box').html(news_html); 272 if (news_html) { 273 $("#pg_view").css({ "width": "50%" }); 274 $(".pges-list-box").css({ "border-left": "none" }); 275 $("#nws_list_view").css({ "display": "block" }); 276 } else { 277 $("#pg_view").css({ "width": "75%" }); 278 $("#nws_list_view").css({ "display": "none" }); 279 $(".pges-list-box").css({ "border-left": "1px solid #dedcdc" }); 280 } 281 setAudioURL() 282 } 283 function errorStatus(textStatus, errorThrown) { 284 KAUMUDI.utils.hideLoader(); 285 } 286 KAUMUDI.utils.sendAjaxPost('EpaperController/GetNewsListHtml', formData, 'html', successCallBack, errorStatus); 287 } 288 function cropImage(image_target, left, top, width, height) { 289 var crop_canvas; 290 crop_canvas = document.createElement('canvas'); 291 crop_canvas.width = width; 292 crop_canvas.height = height + 200; 293 var crop_canvas_ctx = crop_canvas.getContext('2d'); 294 crop_canvas_ctx.rect(0, height, width, height + 200); 295 crop_canvas_ctx.fillStyle = "#f1f1f1"; 296 crop_canvas_ctx.fill(); 297 crop_canvas_ctx.drawImage(image_target, left, top, width, height, 0, 0, width, height); 298 $('body').append('<img src="' + crop_canvas.toDataURL("image/jpeg") + '"/>'); 299 } 300 function setCalendarDaysActive() {
301 var month = parseInt($("#datepicker").find('[data-handler="selectMonth"]').val()) + 1, 302 year = parseInt($("#datepicker").find('[data-handler="selectYear"]').val()), 303 day = 0; 304 var formData = new FormData(); 305 formData.append("prdt_code", $("#ep_prdt").attr("data-pdt")); 306 formData.append("prdt_yr", year); 307 formData.append("prdt_mnth", month); 308 KAUMUDI.utils.showLoader(); 309 function successCallBack(days) { 310 $("#datepicker").find('.ui-datepicker-calendar tbody td[data-handler="selectDay"]').each(function () { 311 day = parseInt($(this).find('.ui-state-default').text()); 312 if (days.indexOf(day) === -1) { 313 $(this).css({ "pointer-events": "none" }); 314 $(this).find('.ui-state-default').css({ "background": "#d6d6d6" }); 315 } 316 }); 317 KAUMUDI.utils.hideLoader(); 318 } 319 function errorStatus(textStatus, errorThrown) { 320 KAUMUDI.utils.hideLoader(); 321 } 322 KAUMUDI.utils.sendAjaxPost('EpaperController/GetActiveDateList' + (reqEdtn ? "?pr=1" : ""), formData, 'json', successCallBack, errorStatus); 323 $('body').find('.ui-datepicker-month,.ui-datepicker-year').change(function () { 324 setCalendarDaysActive(); 325 }); 326 $('body').find('.ui-datepicker-prev,.ui-datepicker-next').click(function () { 327 setCalendarDaysActive(); 328 }); 329 } 330 function recalcCoords() { 331 var imgSize = $("#epaper_img").find('#epaper_pge_img')[0]; 332 var maskWidth = 580; 333 var scale = maskWidth / imgSize.naturalWidth, 334 widthRatio = imgSize.width / maskWidth, 335 heightRatio = imgSize.height / (imgSize.naturalHeight * scale); 336 if (imgSize.width == 580) return; 337 $("#epaper_img").find('area').each(function () { 338 var area = $(this), 339 shape = area.attr('shape').toLowerCase().substr(0, 4); 340 var i, coords = area.attr('coords').split(','); 341 if (shape == 'circ') { 342 var x1 = parseInt(coords[0]), 343 x2 = x1 + parseInt(coords[2]), 344 newRad = Math.round(x2 * widthRatio - x1 * widthRatio); 345 coords[0] = Math.round(x1 * widthRatio); 346 coords[1] = Math.round(coords[1] * heightRatio); 347 coords[2] = newRad; 348 } else { 349 for (i = 0; i < coords.length; i++) { 350 coords[i] = i % 2 == 0 ? parseInt(parseInt(coords[i]) * widthRatio) : parseInt(parseInt(coords[i]) * heightRatio); 351 } 352 } 353 var actCoords = area.attr('actcoords'); 354 area.attr('actcoords', actCoords ? actCoords : area.attr('coords')); 355 area.attr('coords', coords.join(',')); 356 }); 357 KAUMUDI.utils.hideLoader(); 358 359 } 360 function setRelHeightCoords() { 361 $("#epaper_img").find('#epaper_pge_img').one("load", function () { 362 $(".pges-box").css({ "height": $("#epaper_img").find('#epaper_pge_img').height() + 'px' }); 363 $(".nws-box").css({ "height": $("#epaper_img").find('#epaper_pge_img').height() + 'px' }); 364 recalcCoords(); 365 }).each(function () { 366 if (this.complete) { 367 $(this).trigger('load'); 368 } 369 }); 370 } 371 function setGAPageViews() { 372 var epPrdt = $("#ep_prdt").attr("data-pdt"), 373 epDate = moment($("#ep_dte_text").text(), "MMMM DD,YYYY").format("DD-MMMM-YYYY"), 374 epEdition = $("#ep_edition").attr("data-edt"), 375 epPage = $("#ep_page").attr("data-page"); 376 ga('set', 'page', '/epaper/article/' + epPrdt + '/' + epDate + '/' + epEdition + '/' + epPage); 377 ga('send', 'pageview', { 378 'page': '/epaper/article/' + epPrdt + '/' + epDate + '/' + epEdition + '/' + epPage, 379 'title': document.title 380 }); 381 } 382 function setMetaPageTitle() { 383 var epPage = $("#ep_page").attr("data-page").split("_"), 384 epPrdtNameSmall = $("#ep_prdt_text").text().toLowerCase(), 385 epPrdtName = epPrdtNameSmall.charAt(0).toUpperCase() + epPrdtNameSmall.slice(1), 386 epDate = moment($("#ep_dte_text").text(), "MMMM DD,YYYY").format("DD-MMM-YYYY").toUpperCase(), 387 epEdition = $("#ep_edition").attr("data-edt").toUpperCase(), 388 pageTitle = 'Kerala Kaumudi' + (epPrdtName == 'Flash' ? (' ' + epPrdtName) : (' ' + epPrdtName)) + ' Epaper | ' + epDate + ' ' + epEdition + ' ' + (epPage[0] + ' ' + epPage[1]) + ' :: Epaper'; 389 document.title = pageTitle; 390 $("meta[property='og\\:title']").attr("content", pageTitle); 391 } 392 393 function setAudioURL() { 394 var base_url = window.location.origin; 395 var prdt = $("#ep_prdt").attr("data-pdt"); 396 if (prdt == 'CLNDR' || prdt == 'FSH' || prdt == 'WKLY' || prdt == 'SPCL') { 397 $("#ep_audio").hide(); 398 } else { 399 $("#ep_audio").show(); 400 var date = moment($("#ep_dte_text").text(), "MMMM DD, YYYY").format("DD-MM-YYYY"); 401 var edtn = $("#ep_edition").attr("data-edt"); 402 $("#ep_audio_button").attr("href", base_url + "/news/audio.php?dt=" + date + "&p=" + prdt + "&e=" + edtn); 403 } 404 } 405 406 /************** 407 *Public Region* 408 ***************/ 409 return { 410 init: function () { 411 setGAPageViews(); // Google analytics page views 412 var width = (window.innerWidth > 0) ? window.innerWidth : screen.width; 413 if (window.location.href.indexOf('article') !== -1 && window.location.href.indexOf('articles-view') === -1 && width < 970) { 414 window.location = window.location.href.replace('article', 'articles-view'); 415 } 416 var logoWidth = $(".logo-sec").find('img:visible').width(); 417 $(".logo-title").css({ "margin-left": (((($(".logo-sec").width() - logoWidth) / 2) + logoWidth) - 93) + 'px', "display": "inline-block" });
418 var loggedIn = KAUMUDI.utils.getCookie("KKSTAYLOGIN"); 419 if (page == 'EPAPER-PLANS') { 420 $(".toolbar_button").on('click', '#user_info', function () { 421 $(this).closest('li').find('.account-box').attr("style", "display:block"); 422 }); 423 $("#signin-btn").click(function () { 424 $('body').addClass('modal-open'); 425 $('body').append('<div class="modal-backdrop fade in"></div>'); 426 $('#loginModal').addClass('in'); 427 $('#loginModal').css({ "display": "block" }); 428 }); 429 } else if (page == 'EPAPER-ARTICLE') { 430 $("#epDateDialog").dialog({ 431 autoOpen: false, 432 width: "auto", 433 modal: true, 434 title: "Pick Date", 435 draggable: false, 436 resizable: false, 437 minHeight: 120, 438 fluid: true, 439 close: function (event, ui) { 440 } 441 }); 442 $("#datepicker").datepicker({ 443 autoSize: true, 444 changeMonth: true, 445 changeYear: true, 446 defaultDate: new Date(), 447 dateFormat: 'dd/mm/yy', 448 onSelect: function (dateText, inst) { 449 onDateSelect(dateText); 450 }, 451 }); 452 //on page ready recal coords & find html 453 setRelHeightCoords(); 454 setNewsListHtml(); 455 456 //read specials 457 $(document).on('click', '.read-specials', function (e) { 458 var id = $(this).attr("data-id"); 459 $("#SpecialsModalBody").html(""); 460 $('.spcl-bg-black').hide(); 461 $('#SpecialsModal').removeClass('show-modal') 462 $('#ep_dte,#ep_edition,#ep_page,#ep_audio,#ep_video').hide(); 463 464 //reset logo 465 $("#kk_flash_logo").hide(); 466 $("#kk_logo").fadeIn(1000); 467 $(".logo-box").css({ "width": "40%" }); 468 $("#ep_prdt").attr("data-pdt", 'SPCL'); 469 $("#ep_prdt_text").text('Specials'); 470 471 setAvailableDateEdtPage('SPCL', id); 472 }); 473 474 //events 475 $("#ep_prdt,#ep_edition,#ep_page").click(function () { 476 loggedIn = KAUMUDI.utils.getCookie("KKSTAYLOGIN"); 477 if (!loggedIn && !reqProduct && !(typeof is_newstrack !== 'undefined' && is_newstrack)) { 478 alertSignIn(); 479 return false; 480 } 481 $("#ep_prdt,#ep_edition,#ep_page").find('.dropdown-menu').css({ "display": "none" }); 482 $(this).find('.dropdown-menu').css({ "display": "block" }); 483 }); 484 $("#ep_prdt").on('click', '.dropdown-menu li', function (e) { 485 if ($(this).attr("data-pdt") == 'SPCL') { 486 //Special page 487 KAUMUDI.utils.showLoader(); 488 $("#SpecialsModalBody").html('<div style="width: 100%;text-align: center;"><img src="/epaper/assets/images/loader.gif"></div>'); 489 $('#SpecialsModal').addClass('show-modal') 490 $('.spcl-bg-black').show(); 491 $("#ep_prdt .dropdown-menu").attr("style", "display:none"); 492 if (googletag && googletag.pubads) googletag.pubads().refresh(); 493 var formData = new FormData(); 494 KAUMUDI.utils.sendAjaxPost('EpaperController/GetSpecialsList', formData, 'html', 495 function (data) { 496 KAUMUDI.utils.hideLoader(); 497 $("#SpecialsModalBody").html(data); 498 }, 499 function (textStatus, errorThrown) { 500 KAUMUDI.utils.hideLoader(); 501 }); 502 } else { 503 //all other products 504 $('#ep_dte,#ep_edition,#ep_page,#ep_audio,#ep_video').show(); 505 if (googletag && googletag.pubads) googletag.pubads().refresh(); 506 if ($("#ep_prdt").attr("data-pdt") != $(this).attr("data-pdt")) { 507 $("#ep_prdt").attr("data-pdt", $(this).attr("data-pdt")); 508 $("#ep_prdt_text").text($(this).text()); 509 setAvailableDateEdtPage($(this).attr("data-pdt"), ''); 510 if ($(this).attr("data-pdt") == 'FSH') { 511 $("#kk_logo").hide(); 512 $("#kk_flash_logo").fadeIn(1000); 513 $(".logo-box").css({ "width": "18%" }); 514 } else { 515 $("#kk_flash_logo").hide(); 516 $("#kk_logo").fadeIn(1000); 517 $(".logo-box").css({ "width": "40%" }); 518 } 519 var logoWidth = $(".logo-sec").find('img:visible').width(); 520 $(".logo-title").css({ "margin-left": (((($(".logo-sec").width() - logoWidth) / 2) + logoWidth) - 93) + 'px' }); 521 $("#main-container").css({ "margin-top": ($(".fixed-header").height() + 10) + 'px' }); 522 } 523 $("#ep_prdt .dropdown-menu").attr("style", "display:none"); 524 e.stopPropagation();
525 loggedIn = KAUMUDI.utils.getCookie("KKSTAYLOGIN"); 526 if (!loggedIn && reqProduct && !(typeof is_newstrack !== 'undefined' && is_newstrack)) { 527 alertSignIn(); 528 return false; 529 } 530 } 531 }); 532 $("#ep_edition").on('click', '.dropdown-menu li', function (e) { 533 if (googletag && googletag.pubads) googletag.pubads().refresh(); 534 $("#ep_edition").attr("data-edt", $(this).attr("data-edt")); 535 $("#ep_edition_text").text($(this).text()); 536 $("#ep_edition .dropdown-menu").attr("style", "display:none"); 537 setPages(); 538 e.stopPropagation(); 539 }); 540 $("#ep_page").on('click', '.dropdown-menu li', function (e) { 541 // if ($(this).attr("data-page").substring(0,2) != '01') { 542 if ($(this).index() > 0) { 543 loggedIn = KAUMUDI.utils.getCookie("KKSTAYLOGIN"); 544 var hasNewstrackAccess = (typeof is_newstrack !== 'undefined' && is_newstrack) || (typeof reqProduct !== 'undefined' && reqProduct !== ''); 545 if (loggedIn || hasNewstrackAccess) { 546 if (!hasNewstrackAccess && sub_start != '') { 547 is_paid = false; 548 ep_dt = document.getElementById('epaper_pge_img').src.split('/'); 549 if (ep_dt[5] == 'DLY') { 550 eDate = new Date(ep_dt[6] + '/' + ep_dt[7] + '/' + ep_dt[8]); 551 today = new Date(); 552 cDate = new Date(`${today.getFullYear()}/${String(today.getMonth() + 1).padStart(2, '0')}/${String(today.getDate()).padStart(2, '0')}`); 553 for (let sr of sub_rec) { 554 from = new Date(sr.date_from); 555 to = new Date(sr.date_to); 556 if ((eDate >= from && eDate <= to) || (cDate >= from && cDate <= to)) { 557 if (ep_dt[9] == 'EPR') { 558 if ([0, 1, 3, 4, 7].includes(sr.plan_id)) { 559 is_paid = true; 560 break; 561 } 562 } else { 563 if ([0, 2, 5, 6, 7].includes(sr.plan_id)) { 564 is_paid = true; 565 break; 566 } 567 } 568 } 569 } 570 if (!is_paid) { 571 const targetDate = new Date(sub_start); 572 const today = new Date(); 573 targetDate.setHours(0, 0, 0, 0); 574 today.setHours(0, 0, 0, 0); 575 const diffTime = targetDate - today; 576 const diffDays = Math.round(diffTime / 86400000); 577 document.querySelector('[data-modal="sub-plans"]').click(); 578 if (diffDays < 0) return false; 579 } 580 } 581 } 582 } else { 583 alertSignIn(); 584 return false; 585 } 586 } 587 if (googletag && googletag.pubads) googletag.pubads().refresh(); 588 $("#ep_page").attr("data-page", $(this).attr("data-page")); 589 $("#ep_page").attr("data-curindex", $(this).attr("data-curindex")); 590 $("#ep_page_text").text($(this).text()); 591 $("#ep_page .dropdown-menu").attr("style", "display:none"); 592 setMapImgHtml($(this).attr("data-page")); 593 e.stopPropagation(); 594 }); 595 $("#ep_publications").click(function () { 596 $(this).find('.dropdown-menu').css({ "display": "block" }); 597 }); 598 // Function to check device token for single device login enforcement 599 function checkDeviceToken() { 600 if (typeof is_newstrack !== 'undefined' && is_newstrack) return; 601 if (!logged_in_user) return; 602 603 // Admin email (you) 604 // var isAdmin = (logged_in_user === "[email protected]"); 605 606 // Choose correct folder 607 // var folder = isAdmin 608 // ? "/apps/epaper/login_limit/" 609 // : "/apps/epaper/device_token/"; 610 611 // Add cache-busting parameter 612 // var url = folder + logged_in_user + ".txt?t=" + new Date().getTime(); 613 var url = "/apps/epaper/login_limit/" + logged_in_user + ".txt?t=" + new Date().getTime(); 614 615 $.ajax({ 616 url: url, 617 cache: false, 618 dataType: 'json' 619 }).then(function (serverData) { 620 var client_token = (KAUMUDI.utils.getCookie("DEVICETOKEN") || "").trim(); 621 622 // if (isAdmin) { 623 // Handle JSON token array 624 if (Array.isArray(serverData)) { 625 if (!serverData.includes(client_token)) { 626 console.log("Token mismatch ? user logged out (admin multiple login exceeded)"); 627 KAUMUDI.AUTH.userLogout('#logout_btn', '/epaper/'); 628 } 629 } else { 630 console.log("Invalid JSON token format for admin user"); 631 } 632 // } else { 633 // // Handle plain text token 634 // var server_token = (serverData || "").toString().trim(); 635 // if (client_token && server_token && client_token !== server_token) { 636 // console.log("Token mismatch user logged out (new login detected)"); 637 // KAUMUDI.AUTH.userLogout('#logout_btn', '/epaper/'); 638 // } 639 // } 640 }).catch(function (error) { 641 console.log("Device token check failed:", error); 642 }); 643 } 644 645 // Check device token on page load 646 checkDeviceToken(); 647 648 // Check device token periodically every 10 seconds 649 setInterval(checkDeviceToken, 10000); 650 651 $('body').click(function (e) { 652 // Check device token on user interaction 653 if ($(this).index() > 0) { 654 checkDeviceToken(); 655 } 656 var container = $("#ep_prdt,#ep_edition,#ep_page,#user_info,.account-box,#ep_publications"); 657 if (!container.is(e.target) && container.has(e.target).length === 0) { 658 $("#ep_prdt .dropdown-menu,#ep_edition .dropdown-menu,#ep_page .dropdown-menu,#ep_page .dropdown-menu,.account-box,#ep_publications .dropdown-menu").attr("style", "display:none"); 659 } 660 }); 661 $("#ep_dte").click(function () {
662 loggedIn = KAUMUDI.utils.getCookie("KKSTAYLOGIN"); 663 if (!loggedIn && !(typeof is_newstrack !== 'undefined' && is_newstrack)) { 664 alertSignIn(); 665 return false; 666 } 667 if (googletag && googletag.pubads) googletag.pubads().refresh(); 668 $("#epDateDialog").dialog("open"); 669 setCalendarDaysActive(); 670 }); 671 $("#epaper_img").on('click', 'area', function () { 672 if (googletag && googletag.pubads) googletag.pubads().refresh(); 673 var newsId = $(this).attr("newsid"); 674 var actCoords = $(this).attr("actcoords"); 675 setSelectedAreaImg(actCoords ? actCoords : $(this).attr("coords"), $(this).attr("shape"), true); 676 setWebNews(newsId, true); 677 }); 678 //set default news on page loads on first area 679 var actCoords = $('area:first').attr("actcoords"); 680 setSelectedAreaImg(actCoords ? actCoords : $('area:first').attr("coords"), $('area:first').attr("shape"), false); 681 setWebNews($('area:first').attr("newsid"), false); 682 683 $("#get_img").click(function () { 684 var imgPath = $("#epaper_img").find('img').attr("src"); 685 var imgPathPieces = imgPath ? imgPath.split("/") : []; 686 if (imgPathPieces) { 687 imgPathPieces[imgPathPieces.length - 1] = "image_hd.jpg"; 688 } 689 var myImage = new Image(); 690 myImage.src = imgPathPieces.join("/"); 691 var x = document.createElement("IMG"); 692 x.setAttribute("src", imgPathPieces.join("/")); 693 cropImage(x, 90 * (3280 / 580), 260 * (4894 / 865), (502 * (3280 / 580)) - (90 * (3280 / 580)), (644 * (4894 / 865)) - (260 * (4894 / 865))); 694 }); 695 $("#ep_full_view").click(function () { 696 loggedIn = KAUMUDI.utils.getCookie("KKSTAYLOGIN"); 697 if (!loggedIn && !(typeof is_newstrack !== 'undefined' && is_newstrack)) { 698 alertSignIn(); 699 return false; 700 } 701 var imgPath = $("#epaper_img").find('img').attr("src"); 702 var imgPathPieces = imgPath ? imgPath.split("/") : []; 703 if (imgPathPieces) { 704 imgPathPieces[imgPathPieces.length - 1] = "image_hd.jpg"; 705 } 706 window.open(baseUrlEP + 'page-view?u=' + window.btoa(imgPathPieces.join("/")), "_blank"); 707 }); 708 $("#web_link").click(function () { 709 window.open($(this).attr("data-url"), "_blank"); 710 }); 711 //Trigger Audio 712 $("#trigger-audio").click(function () { 713 $("#audio-wrap").toggleClass("sactive"); 714 }); 715 $("#img_view_btn").click(function () { 716 $("#img_view").removeClass('hide'); 717 $("#text_view").addClass('hide'); 718 $("#img_view_btn").addClass('hide'); 719 $("#txt_view_btn").removeClass('hide'); 720 $("[data-network]").attr("data-url", web_url ? encodeURI(web_url + '&s_im=' + encodeURI(areaimg_url)) : encodeURI(areaimg_url)); 721 $("[data-network]").attr("data-image", encodeURI(hostAddress + areaimg_url)); 722 }); 723 $("#txt_view_btn").click(function () { 724 $("#img_view").addClass('hide'); 725 $("#text_view").removeClass('hide'); 726 $("#img_view_btn").removeClass('hide'); 727 $("#txt_view_btn").addClass('hide'); 728 $("[data-network]").attr("data-url", web_url ? encodeURI(web_url + '&s_im=' + encodeURI(areaimg_url)) : encodeURI(areaimg_url)); 729 $("[data-network]").attr("data-image", encodeURI(hostAddress + areaimg_url)); 730 }); 731 $(".pges-list-box").on('click', '.pge_list', function () { 732 var $this = $(this); 733 if ($('#ep_prdt').attr('data-pdt') == 'SPCL') { 734 $('#ep_prdt').attr('data-pdt', $this.attr('data-spclprod')); 735 $('#ep_edition').attr('data-edt', $this.attr('data-spcledtn')); 736 $('#ep_dte_text').text($this.attr('data-spcldte')); 737 $("#ep_page").find('.dropdown-menu li[data-page="' + $(this).attr("data-page") + '"]').click(); 738 //Reset after click for next click 739 setTimeout(function () { $('#ep_prdt').attr('data-pdt', 'SPCL'); $("#ep_audio").hide(); }, 1000); 740 } else { 741 $("#ep_page").find('.dropdown-menu li[data-page="' + $(this).attr("data-page") + '"]').click(); 742 } 743 }); 744 $(".nws-box").on('click', '.nws-item', function () { 745 $("#epaper_img").find('area[newsid="' + $(this).attr("data-newsid") + '"]').click(); 746 }); 747 $(".nws-box").on('mouseover', '.nws-item', function () { 748 $("#epaper_img").find('area[newsid="' + $(this).attr("data-newsid") + '"]').mouseover(); 749 }); 750 $(".nws-box").on('mouseout', '.nws-item', function () { 751 $("#epaper_img").find('area[newsid="' + $(this).attr("data-newsid") + '"]').mouseout(); 752 }); 753 $(".toolbar_button").on('click', '#user_info', function () { 754 $(this).closest('li').find('.account-box').attr("style", "display:block"); 755 }); 756 $("#signin-btn").click(function () { 757 $('body').addClass('modal-open'); 758 $('body').append('<div class="modal-backdrop fade in"></div>'); 759 $('#loginModal').addClass('in'); 760 $('#loginModal').css({ "display": "block" }); 761 }); 762 $('[data-toggle="tab"]').click(function () { 763 $(".tab-pane").removeClass('active'); 764 $($(this).attr('href')).addClass('active'); 765 $("#tabs").find('li').removeClass('active'); 766 $(this).closest('li').addClass('active'); 767 }); 768 $(".toggle-font-size").click(function () { 769 var $this = $(this), 770 $target = $("#news_desc"), 771 action = $this.attr("data-action"), 772 currentSize = parseInt($target.css('font-size')), 773 lineHeight = parseInt($target.css('line-height')); 774 if (action == 'plus') { 775 if (currentSize <= 30) { 776 $target.css('font-size', currentSize + parseInt(1) + "px"); 777 $target.css('line-height', lineHeight + parseInt(1) + "px"); 778 } 779 } else { 780 if (currentSize > 16) { 781 $target.css('font-size', currentSize - parseInt(1) + "px"); 782 $target.css('line-height', lineHeight - parseInt(1) + "px"); 783 } 784 } 785 }); 786 $(".cal_pge").click(function () { 787 var thumb_img_path = $(this).find('img').attr('src'); 788 var act_img_path = thumb_img_path.replace('thumbs', 'imgs'); 789 $("#epaper_img").html('<img src="' + act_img_path + '" width="100%">'); 790 }); 791 if (window.location.href.indexOf('/calendar/') > 0) {
792 loggedIn = KAUMUDI.utils.getCookie("KKSTAYLOGIN"); 793 if (!loggedIn && !(typeof is_newstrack !== 'undefined' && is_newstrack)) { 794 alertSignIn(); 795 return false; 796 } 797 } 798 799 //Play Video 800 $("#video_view_btn").click(function () { 801 var video = $(this).attr("data-vid"); 802 if (video) { 803 $('body').addClass('modal-open'); 804 $('#modal').addClass('in'); 805 $('body').append('<div class="modal-backdrop fade in"></div>'); 806 $('#modal').css({ "display": "block" }); 807 $("#info-body").html('<iframe width="100%" height="450" src="https://www.youtube.com/embed/' + video + '?autoplay=1&rel=1" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>'); 808 $("#info-body").show(); 809 } 810 }); 811 812 if (reqProduct && reqDate && reqEdtn) { 813 setTimeout(function () { 814 //NT Dynamic Click 815 if ($('#ep_prdt').attr("data-pdt") != reqProduct) { 816 $("li[data-pdt='" + reqProduct + "']").click(); 817 } 818 onDateSelect(reqDate); 819 }, 500); 820 } else if (reqProduct) { 821 if ($('#ep_prdt').attr("data-pdt") != reqProduct) { 822 KAUMUDI.utils.showLoader(); 823 setTimeout(function () { 824 $("li[data-pdt='" + reqProduct + "']").click(); 825 KAUMUDI.utils.hideLoader(); 826 }, 500); 827 } 828 } 829 830 if (home_cal_link) { 831 setTimeout(function () { 832 $("li[data-pdt='" + home_cal_link.hcl_product + "']").click(); 833 onDateSelect(home_cal_link.hcl_date); 834 setTimeout(function () { 835 $('#ep_dte_text').text('January 01, ' + home_cal_link.hcl_date.slice(-4)); 836 }, 500); 837 }, 500); 838 } 839 } 840 }, 841 setNoAreaImg: function () { 842 $("#img_view").html('<div id="no-web-news" class="hide"><p>Sorry, No clipping found for this selection.</p></div>'); 843 $("[data-network]").attr("data-url", encodeURI(web_url)); 844 } 845 } 846})();
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.