'); setTimeout(function(){ $userImg.addClass('is-display'); $('.iconLoader').css('display','none'); },1000); if( imgWidth > imgHeight) { $userImg.height(frameWidth); } else { $userImg.width(frameWidth); } }); $(document).on('click', '.js-viewblock', function(){ $.cookie("listViewType","1",{expires: 180,path:"/"}); }); $(document).on('click', '.js-viewlist', function(){ $.cookie("listViewType","0",{expires: 180,path:"/"}); }); $(document).on('click','.js-browser', function(){ $url = "/rsf-svc/browser/auth/"; $btn = $(this); if($btn.hasClass('doubleSubmit')){ return; }else{ $btn.addClass('doubleSubmit'); } $data = { aid : $btn.attr('contentsId'), sampleFlg : $btn.attr('sample'), saleFlg : ($btn.attr('sale') != undefined) ? 1 : 0, returnPath : location.pathname }; if($btn.attr('titleId') != undefined){ $data.titleId = $btn.attr('titleId'); } if(location.search != undefined){ $data.getparameter = location.search; } callAjaxCart($btn,$url,$data,function(buttn,errorCode,response){ //現在のURLから特定のパラメータの値を取得するfunction getUrlParameter(paramName, defaultValue) {var searchParam = location.search.match(new RegExp('(?:\\?|&)' + paramName + '(?:=([^&]*))?'));var paramRes = (searchParam && 1 入荷したら通知する'; } }else if($btn.hasClass("js-addNotification")){ $currentClass = "js-addNotification"; $nextClass = "js-removeNotification"; $flg = 0; $alertMessage = "入荷の通知を承りました。"; $errorMessage = "すでに通知を登録しています。"; if($kbn == 3){ if($btn.hasClass("js-seriesTag") ){ $tag = '入荷通知' }else if( !$btn.hasClass("js-searchTag")){ $tag = '入荷の通知を取り消す'; } } } $otherErrorMessage = "処理に失敗しました"; $url = "/rsf-svc/new/notification/"; $data = { aid : $aid, kbn : $kbn, flg : $flg, tid : $tid, authorNm : $authorNm, atid : $authorId, }; callAjaxCart($btn,$url,$data,function(bttn,resCode,extention){ if((resCode == "2125") || (resCode == "2126")){ if(extention == 3){ showErrorAlert($errorMessage); if($btn.hasClass("js-seriesTag")){ bttn.before($tag); bttn.remove(); }else{ bttn.closest("li").html($tag); } }else{ if(resCode == "2125"){ if($btn.hasClass("js-searchTag")){ bttn.prop('checked',false); showErrorAlert($errorMessage); }else{ bttn.prop('checked',true); bttn.removeClass("js-addNotification").addClass("js-removeNotification"); } }else if(resCode == "2126"){ bttn.prop('checked',false); bttn.removeClass("js-removeNotification").addClass("js-addNotification"); } } }else if(resCode == "OK"){ if(extention == 3){ showCommonAlert($alertMessage); if($btn.hasClass("js-seriesTag")){ bttn.before($tag); bttn.remove(); }else{ bttn.closest("li").html($tag); } }else{ bttn.removeClass($currentClass).addClass($nextClass); } }else{ if(extention != 3){ if($flg == 0){ bttn.prop('checked',false); }else{ bttn.prop('checked',true); } showErrorAlert($otherErrorMessage); }else{ showErrorAlert($otherErrorMessage); } } },$kbn); }); $('.js-login').on('click', function(){ var url = window.location.href; $(this).attr('href', "/login/start?sendUrl=" + encodeURIComponent(url )); }); var ua = navigator.userAgent; var isAndroid44xInAppBrowser = ( (ua.indexOf('Android 4.4') > 0 && ua.indexOf('Reader') > 0) ); if (isAndroid44xInAppBrowser) { $('.js-overflowScroll').overflowScroll(); } var match = location.search.match(/(\?|&)coupon(=[A-Za-z0-9]*)?($|&)/); if (match) { $('#couponModal').addClass('is-show'); couponCode = ''; if (match[2]) { couponCode = match[2].substr(1); } $('#couponCode').val(couponCode); } $('.modalMypageCoupon__buttonBox').on('click', function(e) { $btn = $(this); if($btn.hasClass('doubleSubmit')){ return; }else{ $btn.addClass('doubleSubmit'); } var postData = $("#couponRegistForm").serialize(); var couponCode = $btn.parent().find("input[name='couponCode']").val(); var check_limit = couponCode.length; var regist = $btn.parent().find(".regist"); var release = $btn.parent().find(".release"); var coupon = $("#couponModal"); var registModal = $("#couponRegistModal"); var pointTextHeader = $("#user_point_header"); var pointTextHeaderSP = $("#user_point_header_sp"); registModal.css({'display' : 'none'}); if (check_limit == 12 && couponCode.match(/^[0-9a-zA-Z]+$/)) { $.ajax({ type:'POST', data: postData, url:'/mypage/useCoupon', success : function(data) { var startString = data.substr(0,15); if (startString == "") { var url = window.location.href; location.href="/login/start?sendUrl=" + encodeURIComponent(url); } else { coupon.removeClass("is-show") release.css({'display' : 'none'}); registModal.css({'display' : ''}); $('#useCouponResult').html(data); var csRegex = new RegExp('[\\?&]cs(=([^]*)|&|#|$)'); var csParam = csRegex.exec(window.location.search); if (csParam != null && csParam[2] != "") { $('#useCouponResult').find('.to-search').attr('href', $('#useCouponResult').find('.to-search').attr('href') + '&cs=' + decodeURIComponent(csParam[2].replace(/\+/g, " "))); } clearCouponCodeText(); reloadPoint(pointTextHeader, pointTextHeaderSP); } }, error : function(XMLHttpRequest, textStatus, errorThrown) { if( XMLHttpRequest.status == 401 ){ window.location.href = "/error?errCd=SESSION_TIMEOUT"; } else { window.location.href = "/error?errCd=SYSTEM"; } } }); } else { regist.removeClass("is-show") release.css({'display' : ''}); } $btn.removeClass('doubleSubmit'); function clearCouponCodeText() { document.coupon.couponCode.value = ""; } }); $(document).on('click', '.js-autopurchase', function(){ $.cookie("after_login_click",$(this).attr("id"),{path:"/", expires:1, secure:true}); var url = window.location.href; location.href="/login/start?sendUrl=" + encodeURIComponent(url); }); $(document).on('click', '.js-autopurchase-next', function(){ $.cookie("after_login_click",$(this).attr("id"),{path:"/", expires:1, secure:true}); var url = window.location.href; location.href="/login/start?sendUrl=" + encodeURIComponent(url); });});function reloadPoint(pointTextHeader, pointTextHeaderSP) { $.ajax({ type : 'GET', url : '/mypage/customerinfo', dataType : 'json', success : function(data) { if (data.point != null) { pointTextHeader.text(data.point.toLocaleString()); pointTextHeaderSP.text(data.point.toLocaleString()); } }, error : function(XMLHttpRequest, textStatus, errorThrown) { } });}$(document).ready(function(){ if((loginFlg && isMatchUrl() === 'top') || isMatchUrl() === 'featureDetail'){ appendElement('#gacha_tmpl_area', '#main', ''); } else { removeElement('#gacha_tmpl_area'); }});// pjax遷移の場合画面が描画されてから処理を実行$(document).bind('pjax:render', function() { if(loginFlg && isMatchUrl() === 'top'){ appendElement('#gacha_tmpl_area', '#main', ''); } else { removeElement('#gacha_tmpl_area'); }});// 特集詳細においてガチャモーダル表示ボタンを押下した際の処理$(".js-popUpGacha").click(function(){ if(loginFlg){ removeElement('.notPopupGacha'); $("body").append('') enableLoginGacha(); } else { // 未ログイン時マイページにリダイレクト var url = window.location.href; location.href="/login/start?sendUrl=" + encodeURIComponent(url); }});/** * 引数に渡された画面に合致するかどうか判定(トップ、特集詳細のみ実装) * @return {String} 画面名 ex)トップ画面:top,特集詳細画面:featureDetail */function isMatchUrl() { // 画面URLリスト var urlList = { top : '/', featureDetail : '/stc/article/campaign/' }; var requestPath = location.pathname; var requestParam = location.search; // 総合フロアトップの判定 if(requestPath === urlList.top && getUrlParam('tab') === ''){ return 'top'; // 特集詳細画面の判定 } else if(requestPath.indexOf(urlList.featureDetail) === 0){ return 'featureDetail'; } return '';}/** * 指定したパラメータのデータを取得する関数 * @param {String} name リクエストパラメータキー * @return {String} リクエストパラメータ値もしくは空文字 */function getUrlParam(name) { name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]'); var regex = new RegExp('[\\?&]' + name + '=([^]*)'); var results = regex.exec(location.search); return results === null ? '' : results[1].replace(/\+/g, ' ');};// 存在しない要素を対象となる要素に追加function appendElement(selector, targetSelector, addElement) { if(!$(selector).length){ $(targetSelector).append(addElement); }}// 対象となる要素を削除function removeElement(selector) { if($(selector).length){ $(selector).remove(); }}/*** 本棚チュートリアルモーダル表示処理* ログイン時、かつ、本棚モーダル表示制御用のcookieが存在していない場合、かつ、* 本棚チュートリアル非表示用のクラス属性が存在していない場合にモーダルを表示(⇦試し読みボタン・サインインして読むボタンの場合は非表示とする為)* @param {Object} イベント発火オブジェクト* @return {Boolean} 後続処理実行フラグ*/function manageBookShelfModal(_this, type){ // 今すぐ見るボタン押下時、チュートリアル閉じるボタン押下イベントにブラウザアプリを立ち上げる為のクラス属性を追加する if(type == 'dispViewer'){ if(!$('.js-bookshelf-modal-close').hasClass('js-browser')){ $('.js-bookshelf-modal-close').addClass('js-browser'); $('.js-bookshelf-modal-close').attr('contentsId', $(_this).attr('contentsId')); } } else { if($('.js-bookshelf-modal-close').hasClass('js-browser')) $('.js-bookshelf-modal-close').removeClass('js-browser'); } if(!$(_this).hasClass('no-bookshelf-tutrial-modal') && loginFlg && !$.cookie('tlab.bookshelfMenuButtonListTutorialView')){ var contentsTitle = $(_this).attr('contentsTitle'); $("#modalTutorialText").html(contentsTitle); // 表示制御用のcookieを登録 var bookShelfModalExpire = new Date('2037/12/31 23:59:59'); // モーダル表示制御用のcookieを登録 document.cookie = "tlab.bookshelfMenuButtonListTutorialView=true; path=/; expires=" + bookShelfModalExpire.toUTCString() + "; secure=true;"; $("#bookshelfModal").addClass("is-show"); return true; } else { return false; }}/** * コンソールログ出力処理 * @param {String|Object} logInfo ログ出力内容 */function commonConsoleLog(logInfo) { // 本番環境以外の場合かつ、ログ出力処理を実行 if(storeId != 'prod' && debugViewFlg){ console.log(logInfo); }}