1jQuery(function($){ 2 3 var winWidth = $(window).innerWidth(); 4 $(window).on('resize', function(){ 5 winWidth = $(window).innerWidth(); 6 checkModalScrollbar(); 7 }); 8 9 /** 10 * ãã°ã¤ã³å¾ ã¡ã¢ã¯ã·ã§ã³ã®ãã°ã¤ã³å¾å¦çãä¿åãã夿° 11 */ 12 var waitLoginVars = { type: null }; 13 14 /** 15 * ã¡ã³ãã¼ã¡ãã¥ã¼ãããããã¦ã³ 16 */ 17 var membermenuDropdownInit = function(){ 18 var $membermenu = $('#js-header .p-member-menu'); 19 if ($membermenu.length) { 20 var hideMembermenuTimer; 21 var clearHideMembermenuInterval = function() { 22 if (winWidth >= 992 && $membermenu.length) { 23 if (hideMembermenuTimer) { 24 clearInterval(hideMembermenuTimer); 25 hideMembermenuTimer = null; 26 } 27 } 28 }; 29 30 $('#js-header').on('click', '#js-header-member-menu-mypage', function(){ 31 if (winWidth < 992 && $membermenu.length) { 32 $('body').removeClass('show-sidemenu'); 33 $('.p-header-search').removeClass('is-active'); 34 $membermenu.toggleClass('is-active'); 35 return false; 36 } 37 }).on('mouseenter', '#js-header-member-menu-mypage', function(){ 38 if (winWidth >= 992 && $membermenu.length) { 39 clearHideMembermenuInterval(); 40 $membermenu.addClass('is-active'); 41 } 42 }).on('mouseenter', '.p-member-menu', function(){ 43 clearHideMembermenuInterval(); 44 }).on('mouseout', '#js-header-member-menu-mypage, .p-member-menu', function(){ 45 clearHideMembermenuInterval(); 46 if (winWidth >= 992 && $membermenu.length) { 47 hideMembermenuTimer = setInterval(function() { 48 if (!$('#js-header-member-menu-mypage').is(':hover') && !$membermenu.is(':hover')) { 49 clearHideMembermenuInterval(); 50 $membermenu.removeClass('is-active'); 51 } 52 }, 20); 53 } 54 }); 55 } 56 }; 57 membermenuDropdownInit(); 58 59 /** 60 * ãã°ã¤ã³URLãªã³ã¯ã¯ãªã㯠61 */ 62 $(document).on('click', 'a[href^="'+TCD_MEMBERSHIP.login_url+'"], [data-url^="'+TCD_MEMBERSHIP.login_url+'"]', function(){ 63 if (!$('body').hasClass('logged-in')) { 64 showModalLogin(); 65 } 66 return false; 67 }); 68 69 /** 70 * è¦ãã°ã¤ã³ãªã³ã¯ã¯ãªã㯠71 */ 72 $(document).on('click', '.js-require-login', function(){ 73 if (!$('body').hasClass('logged-in')) { 74 if (this.href) { 75 waitLoginVars = { 76 type: 'redirect', 77 url: this.href 78 }; 79 } else if ($(this).attr('data-url')) { 80 waitLoginVars = { 81 type: 'redirect', 82 url: $(this).attr('data-url') 83 }; 84 } 85 showModalLogin(); 86 return false; 87 } 88 }); 89 90 /** 91 * ã¢ã¼ãã«ãã°ã¤ã³è¡¨ç¤º 92 */ 93 var showModalLogin = function() { 94 if (location.href.indexOf(TCD_MEMBERSHIP.login_url) > -1){ 95 return false; 96 } 97 98 var $modal = $('#js-modal-login'); 99 if (!$modal.length) { 100 var redirect = TCD_MEMBERSHIP.login_url; 101 if (redirect.indexOf('?') > -1) { 102 redirect += '&'; 103 } else { 104 redirect += '?'; 105 } 106 redirect += 'redirect_to='+encodeURIComponent(location.protocol + "//" + location.host + location.pathname + location.search); 107 location.href = redirect; 108 return false; 109 } 110 111 $('.p-modal.is-active').removeClass('is-active'); 112 $modal.addClass('is-active'); 113 checkModalScrollbar(); 114 }; 115 116 /** 117 * ã¢ã¼ãã«ãã°ã¤ã³ãã©ã¼ã ajaxéä¿¡ 118 */ 119 $('#js-modal-login #js-modal-login-form').submit(function(){ 120 var $modal = $('#js-modal-login'); 121 var $form = $('#js-modal-login-form'); 122 if ($form.hasClass('is-processing')) return false; 123 124 $form.addClass('is-processing').find('.p-membership-form__error').remove(); 125 126 $(this).ajaxSubmit({ 127 success: function(data, textStatus, XMLHttpRequest) { 128 $form.removeClass('is-processing'); 129 if (data.success) { 130 $('body').addClass('logged-in'); 131 132 if (data.header_member_menu) { 133 $('#js-header .p-header-member-menu').html(data.header_member_menu); 134 } 135 if (data.member_menu) { 136 $('#js-header .p-member-menu').remove(); 137 $('#js-header .l-header__bar').after(data.member_menu); 138 membermenuDropdownInit(); 139 } 140 if (data.footer_bar) { 141 var $footer_bar = $($.parseHTML(data.footer_bar)); 142 $('#js-footer-bar').html($footer_bar.html()).attr('class', $footer_bar.attr('class')).attr('style', $footer_bar.attr('style')); 143 $(window).trigger('scroll'); 144 } 145 146 switch(waitLoginVars.type) { 147 case 'redirect': 148 location.href = waitLoginVars.url; 149 break; 150 case 'follow': 151 ajaxToggleFollow(waitLoginVars.$elem, waitLoginVars.user_id
151); 152 break; 153 case 'like': 154 ajaxToggleLike(waitLoginVars.$elem, waitLoginVars.post_id); 155 break; 156 default: 157 var redirect = $form.find('[name="redirect_to"]').val(); 158; 159 if (redirect) { 160 location.href = redirect; 161 } 162 break; 163 } 164 waitLoginVars = { type: null } 165 $modal.removeClass('is-active'); 166 } else if (data.error_message) { 167 $form.find('.p-membership-form__button').append('<p class="p-membership-form__error">'+data.error_message+'</p>'); 168 } else { 169 $form.find('.p-membership-form__button').append('<p class="p-membership-form__error">'+TCD_MEMBERSHIP.ajax_error_message+'</p>'); 170 } 171 checkModalScrollbar(); 172 }, 173 error: function(XMLHttpRequest, textStatus, errorThrown) { 174 $form.removeClass('is-processing'); 175 $form.find('.p-membership-form__button').append('<p class="p-membership-form__error">'+TCD_MEMBERSHIP.ajax_error_message+'</p>'); 176 checkModalScrollbar(); 177 } 178 }); 179 180 return false; 181 }); 182 183 /** 184 * ä¼å¡ç»é²URLã¯ãªã㯠185 */ 186 $(document).on('click', 'a[href^="'+TCD_MEMBERSHIP.registration_url+'"]', function(){ 187 if (!$('body').hasClass('logged-in')) { 188 showModalRegistration(); 189 } 190 return false; 191 }); 192 193 /** 194 * ã¢ã¼ãã«ä»®ä¼å¡ç»é²è¡¨ç¤º 195 */ 196 var showModalRegistration = function() { 197 if (location.href.indexOf(TCD_MEMBERSHIP.registration_url) > -1 && location.href.indexOf('registration_account') > -1 ){ 198 return false; 199 } 200 201 var $modal = $('#js-modal-registration'); 202 if (!$modal.length) { 203 var redirect = TCD_MEMBERSHIP.registration_url; 204 if (redirect.indexOf('?') > -1) { 205 redirect += '&'; 206 } else { 207 redirect += '?'; 208 } 209 redirect += 'redirect_to='+encodeURIComponent(location.protocol + "//" + location.host + location.pathname + location.search); 210 location.href = redirect; 211 return false; 212 } 213 214 $('.p-modal.is-active').removeClass('is-active'); 215 var $modal = $('#js-modal-registration'); 216 switchFormContents('#js-modal-registration-form', 'input'); 217 $modal.addClass('is-active'); 218 checkModalScrollbar(); 219 }; 220 221 /** 222 * ä»®ä¼å¡ç»é²ãã©ã¼ã 223 */ 224 // éä¿¡ 225 $('#js-registration-form').submit(function(){ 226 if ($(this).hasClass('is-processing')) return false; 227 $(this).addClass('is-processing'); 228 }); 229 // ã¢ã¼ãã«ã®ã¿ajaxéä¿¡ 230 $('#js-modal-registration-form').submit(function(){ 231 var $modal = $(this).closest('.p-modal'); 232 var $form = $(this); 233 if ($form.hasClass('is-processing')) return false; 234 235 $form.addClass('is-processing').find('.p-membership-form__error').remove(); 236 237 $(this).ajaxSubmit({ 238 success: function(data, textStatus, XMLHttpRequest) { 239 $form.removeClass('is-processing'); 240 if (data.success) { 241 if (data.registration_complete_desc) { 242 $form.find('.p-membership-form__complete .p-membership-form__body').html(data.registration_complete_desc); 243 } 244 switchFormContents($form, 'complete'); 245 $form.addClass('is-completed'); 246 } else if (data.error_message) { 247 $form.find('.p-membership-form__input .p-membership-form__button').append('<p class="p-membership-form__error">'+data.error_message+'</p>'); 248 } else { 249 $form.find('.p-membership-form__input .p-membership-form__button').append('<p class="p-membership-form__error">'+TCD_MEMBERSHIP.ajax_error_message+'</p>'); 250 } 251 }, 252 error: function(XMLHttpRequest, textStatus, errorThrown) { 253 $form.removeClass('is-processing'); 254 $form.find('.p-membership-form__input .p-membership-form__button').append('<p class="p-membership-form__error">'+TCD_MEMBERSHIP.ajax_error_message+'</p>'); 255 } 256 }); 257 258 return false; 259 }); 260 261 /** 262 * æ¬ä¼å¡ç»é²ã»ã¢ã«ã¦ã³ã使ãã©ã¼ã 263 */ 264 // html5ããªãã¼ã·ã§ã³ãèµ°ããããããã©ã¼ã submitã§ç¢ºèªç»é¢è¡¨ç¤º 265 $('#js-registration-account-form').on('submit.confirm', function(){ 266 var confirm = createConfirmContents(this); 267 if (confirm) { 268 var $form = $(this); 269 $form.find('.p-membership-form__confirm .p-membership-form__body').html(confirm); 270 switchFormContents($form, 'confirm'); 271 } 272 return false; 273 }); 274 // æ»ã 275 $('#js-registration-account-form .js-back-button').click(function(){ 276 var $form = $(this).closest('form'); 277 switchFormContents($form, 'input'); 278 return false;
279 }); 280 // éä¿¡ 281 $('#js-registration-account-form .js-submit-button').click(function(){ 282 var $form = $(this).closest('form'); 283 if ($form.hasClass('is-processing')) return false; 284 285 $form.addClass('is-processing').find('.p-membership-form__error').remove(); 286 287 // 確èªå¦çãå¤ãã¦ãã©ã¼ã éä¿¡ 288 $form.off('submit.confirm').trigger('submit'); 289 }); 290 291 /** 292 * ãã®ä»ãã©ã¼ã ã®éè¤é信対ç 293 */ 294 $('form.js-membership-form--normal').on('submit.processing', function(){ 295 if ($(this).hasClass('is-processing')) return false; 296 $(this).addClass('is-processing'); 297 }); 298 299 /** 300 * ãããã£ã¼ã«ç·¨éã»ã¢ã«ã¦ã³ãç·¨éã§ããã¹ããã£ã¼ã«ãã§ã®ã¨ã³ã¿ã¼ãã¼ã§ãã©ã¼ã éä¿¡ããªãããã« 301 */ 302 $('#js-edit-profile-form, #js-edit-account-form').on('keypress', ':input:not(textarea)', function(event) { 303 304 if (event.keyCode == 13) { 305 event.preventDefault(); 306 } 307 }); 308 309 /** 310 * å§å確èªå¯¾ç 311 */ 312 if ($('.p-membership-form__table-fullname .fullname-hidden').length) { 313 $('.p-membership-form__table-fullname').find('.last_name, .first_name').change(function(){ 314 var fullname = ''; 315 316 $('.p-membership-form__table-fullname').find('.last_name, .first_name').each(function(){ 317 if (fullname) { 318 fullname += ' '; 319 } 320 fullname += this.value; 321 }); 322 323 $('.p-membership-form__table-fullname .fullname-hidden').val(fullname); 324 }).trigger('change'); 325 } 326 327 /** 328 * çå¹´ææ¥ç¢ºèªå¯¾ç 329 */ 330 if ($('.p-membership-form__table-birthday .birthday-hidden').length) { 331 $('.p-membership-form__table-birthday select').change(function(){ 332 var $cl = $(this).closest('.p-membership-form__table-birthday'); 333 var $hidden = $cl.find('.birthday-hidden'); 334 var year = $cl.find('.birthday-year').val(); 335 var month = $cl.find('.birthday-month').val(); 336 var day = $cl.find('.birthday-day').val(); 337 var birthday = ''; 338 339 if (!year && month && day) { 340 birthday = $hidden.attr('data-format-md'); 341 birthday = birthday.replace('m', month); 342 birthday = birthday.replace('d', day); 343 } else if (year || month || day) { 344 birthday = $hidden.attr('data-format-ymd'); 345 birthday = birthday.replace('y', year); 346 birthday = birthday.replace('m', month); 347 birthday = birthday.replace('d', day); 348 } 349 $hidden.val(birthday); 350 }); 351 $('.p-membership-form__table-birthday .birthday-year').trigger('change'); 352 } 353 354 /** 355 * ãã©ãã¼ã¯ãªã㯠356 */ 357 $(document).on('click', '.js-toggle-follow', function(){ 358 var user_id = $(this).attr('data-user-id'); 359 if (!user_id) return false; 360 if ($(this).hasClass('is-ajaxing')) return false; 361 362 // æªãã°ã¤ã³ã®å ´åã¯ã¢ã¼ãã«ãã°ã¤ã³è¡¨ç¤º 363 if (!$('body').hasClass('logged-in')) { 364 waitLoginVars = { 365 type: 'follow', 366 user_id: user_id, 367 $elem: $(this) 368 }; 369 showModalLogin(); 370 return false; 371 } 372
373 ajaxToggleFollow($(this), user_id); 374 375 return false; 376 }); 377 378 /** 379 * ãã©ãã¼ajax 380 */ 381 var ajaxToggleFollow = function(el, user_id) { 382 $(el).addClass('is-ajaxing'); 383 $.ajax({ 384 url: TCD_MEMBERSHIP.ajax_url, 385 type: 'POST', 386 data: { 387 action: 'toggle_follow', 388 user_id: user_id 389 }, 390 success: function(data, textStatus, XMLHttpRequest) { 391 $(el).removeClass('is-ajaxing'); 392 if (data.result == 'added') { 393 $(el).addClass('p-button-following').removeClass('p-button-follow').html(data.text); 394 } else if (data.result == 'removed') { 395 $(el).addClass('p-button-follow').removeClass('p-button-following').html(data.text); 396 } else if (data.message) { 397 showModalAlert(data.message); 398 } else { 399 showModalAlert(TCD_MEMBERSHIP.ajax_error_message); 400 } 401 }, 402 error: function(XMLHttpRequest, textStatus, errorThrown) { 403 $(el).removeClass('is-ajaxing'); 404 showModalAlert(TCD_MEMBERSHIP.ajax_error_message); 405 } 406 }); 407 }; 408 409 /** 410 * ãããã¯ãªã㯠411 */ 412 $(document).on('click', '.js-toggle-like', function(){ 413 var self = this; 414 var post_id = $(this).attr('data-post-id'); 415 if (!post_id) return false; 416 if ($(this).hasClass('is-ajaxing')) return false; 417 418 // æªãã°ã¤ã³ã®å ´åã¯ã¢ã¼ãã«ãã°ã¤ã³è¡¨ç¤º 419 if (!$('body').hasClass('logged-in')) { 420 waitLoginVars = { 421 type: 'like', 422 post_id: post_id, 423 $elem: $(this) 424 }; 425 showModalLogin(); 426 return false; 427 } 428 429 ajaxToggleLike($(this), post_id) 430 return false; 431 }); 432 433 /** 434 * ãããajax 435 */ 436 var ajaxToggleLike = function(el, post_id) { 437 $(el).addClass('is-ajaxing'); 438 $.ajax({ 439 url: TCD_MEMBERSHIP.ajax_url, 440 type: 'POST', 441 data: { 442 action: 'toggle_like', 443 post_id: post_id 444 }, 445 success: function(data, textStatus, XMLHttpRequest) { 446 $(el).removeClass('is-ajaxing'); 447 if (data.result == 'added') { 448 $(el).addClass('p-icon-liked').removeClass('p-icon-like').html(data.likes_number); 449 } else if (data.result == 'removed') { 450 $(el).addClass('p-icon-like').removeClass('p-icon-liked').html(data.likes_number); 451 } else if (data.message) { 452 showModalAlert(data.message); 453 } else { 454 showModalAlert(TCD_MEMBERSHIP.ajax_error_message); 455 } 456 }, 457 error: function(XMLHttpRequest, textStatus, errorThrown) { 458 $(el).removeClass('is-ajaxing'); 459 showModalAlert(TCD_MEMBERSHIP.ajax_error_message); 460 } 461 }); 462 }; 463 464 /** 465 * å ±åããã¯ãªã㯠466 */ 467 $('.js-report-button').on('click', function(){ 468 // æªãã°ã¤ã³ã®å ´åã¯ã¢ã¼ãã«ãã°ã¤ã³è¡¨ç¤º 469 if (!$('body').hasClass('logged-in')) { 470 waitLoginVars = { 471 type: 'report' 472 }; 473 showModalLogin(); 474 return false; 475 } 476 477 $('.p-modal.is-active').removeClass('is-active'); 478 479 var $modal = $('#js-modal-report'); 480 var $form = $('#js-modal-report-form'); 481 482 switchFormContents($form, 'input'); 483 $modal.addClass('is-active'); 484 checkModalScrollbar(); 485 486 return false; 487 }); 488 489 /** 490 * ã¢ã¼ãã«å ±åãããã©ã¼ã 491 */ 492 // html5ããªãã¼ã·ã§ã³ãèµ°ããããããã©ã¼ã submitã§ç¢ºèªç»é¢è¡¨ç¤º 493 $('#js-modal-report-form').on('submit.confirm', function(){ 494 var confirm = createConfirmContents(this); 495 if (confirm) { 496 var $form = $(this); 497 $form.find('.p-membership-form__confirm .p-membership-form__body').html(confirm); 498 switchFormContents($form, 'confirm'); 499 checkModalScrollbar(); 500 } 501 return false; 502 }); 503 // æ»ã 504 $('#js-modal-report .js-back-button').click(function(){ 505 var $form = $('#js-modal-report-form'); 506 switchFormContents($form, 'input'); 507 checkModalScrollbar(); 508 return false; 509 }); 510 // ajaxéä¿¡ 511 $('#js-modal-report .js-submit-button').click(function(){ 512 var $modal = $('#js-modal-report'); 513 var $form = $('#js-modal-report-form'); 514 if ($form.hasClass('is-ajaxing')) return false; 515 516 $form.addClass('is-processing').find('.p-membership-form__error').remove(); 517 518 $.ajax({ 519 url: TCD_MEMBERSHIP.ajax_url, 520 type: 'POST', 521 data: { 522 action: 'report_post', 523 post_id: $form.find('[name="post_id"]').val(), 524 report_comment: $form.find('[name="report_comment"]').val() 525 }, 526 success: function(data, textStatus, XMLHttpRequest) { 527 $form.removeClass('is-processing'); 528 529 if (data.success) { 530 switchFormContents($form, 'complete'); 531 $form.trigger('reset'); 532 } else if (data.error_message) { 533 $form.find('.p-membership-form__input .p-membership-form__button').append('<p class="p-membership-form__error">'+data.error_message+'</p>'); 534 switchFormContents($form, 'input'); 535 } else { 536 $form.find('.p-membership-form__input .p-membership-form__button').append('<p class="p-membership-form__error">'+TCD_MEMBERSHIP.ajax_error_message+'</p>'); 537 switchFormContents($form, 'input'); 538 } 539 }, 540 error: function(XMLHttpRequest, textStatus, errorThrown) { 541 $form.removeClass('is-processing'); 542 $form.find('.p-membership-form__input .p-membership-form__button').append('<p class="p-membership-form__error">'+TCD_MEMBERSHIP.ajax_error_message+'</p>'); 543 switchFormContents($form, 'input'); 544 } 545 }); 546 547 return false;
548 }); 549 550 /** 551 * ãã©ã¼ã 表示é ç®åãæ¿ã 552 */ 553 var switchFormContents = function(form, show) { 554 if (show === 'input') { 555 $(form).removeClass('is-confirm').removeClass('is-complete').addClass('is-input'); 556 } else if (show === 'confirm') { 557 $(form).removeClass('is-input').removeClass('is-complete').addClass('is-confirm'); 558 } else if (show === 'complete') { 559 $(form).removeClass('is-input').removeClass('is-confirm').addClass('is-complete'); 560 } else { 561 return false; 562 } 563 checkModalScrollbar(); 564 }; 565 566 /** 567 * ãã©ã¼ã å ¥åå 容確èªhtmlçæ 568 */ 569 var createConfirmContents = function(form) { 570 var html = ''; 571 572 $(form).find('[data-confirm-label]:input').each(function(){ 573 if ($(this).is(':radio, :checkbox')) { 574 if ($(this).is(':checked')) { 575 html += '<tr><th>'+$(this).attr('data-confirm-label')+'</th><td>'+$(this).closest('label').text()+'</td></tr>' 576 } 577 } else if ($(this).is('textarea')) { 578 html += '<tr><th>'+$(this).attr('data-confirm-label')+'</th><td>'+$(this).val().replace(/\n/g, '<br>')+'</td></tr>' 579 } else { 580 html += '<tr><th>'+$(this).attr('data-confirm-label')+'</th><td>'+$(this).val()+'</td></tr>' 581 } 582 }); 583 584 if (html) { 585 html = '<table class="p-membership-form__table p-membership-form__table-confirm">'+html+'</table>'; 586 } 587 588 return html; 589 }; 590 591 /** 592 * ã¢ã¼ãã« éãã 593 */ 594 $(document).on('click', '.p-modal .p-modal__close', function(event){ 595 if (!$(this).closest('.p-modal').find('.is-processing').length) { 596 $(this).closest('.p-modal').removeClass('is-active'); 597 } 598 return false; 599 }).on('click', '.p-modal .p-modal__contents', function(event){ 600 event.stopPropagation(); 601 }).on('click', '.p-modal', function(event){ 602 if (!$(this).closest('.p-modal').find('.is-processing').length && !$(this).hasClass('.p-modal--disable-mask-click-close')) { 603 $(this).removeClass('is-active'); 604 } 605 }); 606 607 /** 608 * æ±ç¨åé¤ç¢ºèªã¢ã¼ãã«è¡¨ç¤º 609 */ 610 var waitDeleteConfirmVars = { type: null }; 611 $('form.js-delete-confirm').on('submit', function(){ 612 if ($(this).hasClass('is-processing')) return false; 613 }); 614 $('form.js-delete-confirm').on('submit.deleteConfirm', function(){ 615 if ($(this).hasClass('is-processing')) return false; 616 617 waitDeleteConfirmVars = { 618 action: 'submit', 619 $elem: $(this) 620 }; 621 622 $('.p-modal.is-active').removeClass('is-active'); 623 $('#js-modal-delete-confirm').addClass('is-active'); 624 return false; 625 }); 626 $(document).on('click.deleteConfirm', 'a.js-delete-confirm', function(){ 627 waitDeleteConfirmVars = { 628 action: 'click', 629 $elem: $(this) 630 }; 631 return false; 632 }); 633 // cancel 634 $('#js-modal-delete-confirm .js-cancel-button').on('click', function(){ 635 $('#js-modal-delete-confirm').removeClass('is-active'); 636 return false; 637 }); 638 // delete 639 $('#js-modal-delete-confirm .js-submit-button').on('click', function(){ 640 if (waitDeleteConfirmVars.action === 'submit') { 641 $('#js-modal-delete-confirm-form').addClass('is-processing'); 642 waitDeleteConfirmVars.$elem.off('submit.deleteConfirm').trigger('submit').addClass('is-processing'); 643 } else if (waitDeleteConfirmVars.action === 'click') { 644 $('#js-modal-delete-confirm-form').addClass('is-processing'); 645 waitDeleteConfirmVars.$elem.off('click.deleteConfirm').trigger('click'); 646 } else { 647 $('#js-modal-delete-confirm').removeClass('is-active'); 648 } 649 return false; 650 }); 651 652 /** 653 * ã¢ã¼ãã«ã¹ã¯ãã¼ã«ãã¼æç¡ãã§ã㯠654 */ 655 var checkModalScrollbar = function() { 656 if ($('body').hasClass('is-wp-mobile-device')) return false; 657 var $modal = $('.p-modal.is-active'); 658 var $modalContents = $modal.find('.p-modal__contents:visible'); 659 var modalInner = $modal.find('.p-modal__contents__inner:visible').get(0); 660 if (!modalInner || !$modalContents.length) return false; 661 if (modalInner.scrollHeight > $modalContents.height()) { 662 $modal.addClass('has-scrollbar'); 663 } else { 664 $modal.removeClass('has-scrollbar'); 665 } 666 }; 667 668 /** 669 * ã¢ã¼ãã«ã¢ã©ã¼ã表示 670 */ 671 var showModalAlert = function(msg) { 672 if (!msg) return false; 673 674 var $modalAlert = $('#js-modal-alert'); 675 if (!$modalAlert.length) { 676 var html = '<div id="js-modal-alert" class="p-modal p-modal--alert">'; 677 html += '<div class="p-modal__contents">'; 678 html += '<div class="p-modal__contents__inner">'; 679 html += '<div class="p-modal__body p-body"></div>'; 680 html += '<button class="p-modal__close"></button>'; 681 html += '</div>'; 682 html += '</div>'; 683 html += '</div>'; 684 $modalAlert = $(html).appendTo('body'); 685 } 686 687 $('.p-modal.is-active').removeClass('is-active');
688 $modalAlert.find('.p-modal__body').html(msg); 689 $modalAlert.addClass('is-active'); 690 }; 691 692 // ã¢ã¼ãã«ã¢ã©ã¼ãèªå表示 693 if (TCD_MEMBERSHIP.auto_modal_alert_message) { 694 $(document).on('js-initialized-after', function(){ 695 showModalAlert(TCD_MEMBERSHIP.auto_modal_alert_message); 696 }); 697 } 698 699 /** 700 * ãã©ã¦ã¶æ»ã対ç 701 * åè http://mugen00.moo.jp/web/jquery/beforeunload 702 */ 703 if (TCD_MEMBERSHIP.browser_back_alert_messege) { 704 (function(b) { 705 var c = function() { 706 this.initialize(); 707 }; 708 c.prototype = { 709 initialize: function() { 710 history.replaceState('beforeunload', null, null); 711 history.pushState(null, null, null); 712 b(window).on('popstate', b.proxy(this.popstate, this)); 713 }, 714 popstate: function(e) { 715 if (e.originalEvent.state === 'beforeunload') { 716 showModalAlert(TCD_MEMBERSHIP.browser_back_alert_messege); 717 } 718 }, 719 }; 720 new c(); 721 })(jQuery); 722 } 723 724 /** 725 * ãã¬ãã¥ã¼ç¢ºèªç»é¢ã§ã®ãªã³ã¯ã¯ãªãã¯å¯¾ç 726 */ 727 if (TCD_MEMBERSHIP.confirm_page_leave) { 728 $('a').on('click', function(){ 729 return confirm(TCD_MEMBERSHIP.confirm_page_leave); 730 }); 731 } 732 733});
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.