$(function() { var ua = navigator.userAgent; var $spMenu = $('#sp-header-menu'); var $headNavi = $('#header-nav-wrap'); // SP Menu $spMenu.on('click', function() { $spMenu.toggleClass('close'); $headNavi.toggle(); $('#wrapper').toggle(); $('html, body').animate({ scrollTop: 0 }); }); // breakPoint $(window).breakPoint( { smartPhoneWidth : 768, tabletWidth : 0, pcMediumWidth : 0, onSmartPhoneEnter : function(){ // スマホモード時の処理を書く $spMenu.removeClass('close'); $headNavi.hide(); }, onPcEnter : function() { // PCモード時の処理を書く }, onSmartPhoneLeave : function() { // スマホモード解除時の処理を書く $spMenu.removeClass('close'); $headNavi.show(); $('#wrapper').show(); }, onPcLeave : function() { // PCモード解除時の処理を書く } } ); // Tel link if(ua.indexOf('iPhone') > 0 && ua.indexOf('iPod') === -1 || ua.indexOf('Android') > 0 && ua.indexOf('Mobile') > 0 && ua.indexOf('SC-01C') === -1 && ua.indexOf('A1_07') === -1 ) { // 画像 $('.tel-link img').each(function() { var alt = $(this).attr('alt'); $(this).wrap($('').attr('href', 'tel:' + alt.replace(/-/g, ''))); }); // デバイステキスト $('.tel-linktext').each(function() { var str = $(this).text(); $(this).addClass('sp-tel-linktext'); $(this).html($('').attr('href', 'tel:' + str.replace(/-/g, '')).append(str + '')); }); } // ニュース $('.tab').flipSlide({ buttons : '.tabindex a[href*="#"]', bodies : '.tab-body', bodyResize : true, buttonInClass: 'tab-open' //imgPostfixIn: '_in' }); // ナビ $('#lnav li').navigation(); // ロールオーバー $('.rollover').rollOver(); // ロールオーバー (透明度変え版) $('.fadeover img').fadeOver(); // スムーズスクロール $('.smooth a,.smooth').smoothLink(); // 講座を探す 押下イベント $('.header-nav-srch').on('click', function() { $('.course-srch-area').slideToggle(300); $(this).toggleClass('open'); return false; }); // 講座を探す メニューの読み込み $('.js-head-srch').tabslet({ mouseevent : 'click', animation : true }); // 講座を探す ×ボタン押下イベント $(".closebtndiv").click(function(){ $(".header-nav-srch").click(); }); // 詳細検索 押下イベント $('#side-detail-search-btn a').on('click', function() { $('#side-detail-search-box').slideToggle(300); $(this).toggleClass('open'); return false; }); $('a[id^=schooling]').click(function(){ $('#homeForm').attr('action', $(this).data('action')); CmnLib.submit('homeForm'); }); }); // ネームスペース ArtCampusCmnLib = {}; /** * 検索を実行 */ ArtCampusCmnLib.search = function(criteria) { // 検索条件を講座検索Formにhiddenとして追加 criteria.forEach(function (criterion) { $("", {type: 'hidden', name: criterion['name'], value: criterion['value']}).appendTo('#artCampusSearchForm'); }); // 講座検索Formをサブミット CmnLib.doubleClickSubmit('artCampusSearchForm'); } /** * 検索条件(サイド)のチェック */ ArtCampusCmnLib.searchCheck = function(id) { // 検索条件(サイド)の li タグを取得 var li_tag = $('li[id=' + id + ']'); // タグが取得できない場合は何もしない if (li_tag) { if (li_tag.hasClass('active')) { li_tag.removeClass('active'); } else { li_tag.addClass('active'); } } }; /** * 検索条件(サイド)から検索条件を抽出 */ ArtCampusCmnLib.searchCriteria = function() { // 検索条件を抽出 var criteria = []; // ジャンル $('li[id^="side-genre-"]').each(function(index, element){ var li_tag = $(element); if (li_tag.hasClass('active')) { criteria.push({ 'name' : 'genreList', 'value' : li_tag.data('value') }); } }); // キーワード:side-keyword-{値} $('li[id^="side-keyword-"]').each(function(index, element){ var li_tag = $(element); if (li_tag.hasClass('active')) { criteria.push({ 'name' : 'keywordList', 'value' : li_tag.data('value') }); } }); // 区分:side-learning-div-{値} $('li[id^="side-learning-div-"]').each(function(index, element){ var li_tag = $(element); if (li_tag.hasClass('active')) { criteria.push({ 'name' : 'learningDivList', 'value' : li_tag.data('value') }); } }); // 開催地: side-campas-{値} $('li[id^="side-campus-"]').each(function(index, element){ var li_tag = $(element); if (li_tag.hasClass('active')) { criteria.push({ 'name' : 'campusList', 'value' : li_tag.data('value') }); } }); // 詳細(単位連携): side-detail-subject-{値} $('li[id^="side-detail-subject-"]').each(function(index, element){ var li_tag = $(element); if (li_tag.hasClass('active')) { criteria.push({ 'name' : 'replaceSubjectList', 'value' : li_tag.data('value') }); } }); // 詳細(開催形態): side-detail-hold-{値} $('li[id^="side-detail-hold-"]').each(function(index, element){ var li_tag = $(element); if (li_tag.hasClass('active')) { criteria.push({ 'name' : 'holdPatternList', 'value' : li_tag.data('value') }); } }); // // 詳細(申込受付状況): side-detail-recept-{値}→押下された値だけが欲しいので、ここじゃなくて、イベントでやる。 // $('li[id^="side-detail-recept-"]').each(function(index, element){ // var li_tag = $(element); // if (li_tag.hasClass('active')) { // criteria.push({ 'name' : 'holdYear', 'value' : li_tag.data('value') }); // } // }); // //クーポン対象講座 : side-coupon//→押下された値だけが欲しいので、ここじゃなくて、イベントでやる。 // $('li[id^="side-coupon"]').each(function(index, element){ // var li_tag = $(element); // if (li_tag.hasClass('active')) { // criteria.push({ 'name' : 'isCouponTarget', 'value' : li_tag.data('value') }); // } // }); return criteria; } /** * ページ切り替え 押下 */ ArtCampusCmnLib.pageLink = function(page) { // 検索条件を抽出 var criteria = ArtCampusCmnLib.searchCriteria(); // 詳細(申込受付状況) $('li[id^="side-detail-recept-"]').each(function(index, element){ var li_tag = $(element); if (li_tag.hasClass('active')) { criteria.push({ 'name' : 'holdYear', 'value' : li_tag.data('value') }); } }); //クーポン対象講座 $('li[id^="side-coupon"]').each(function(index, element){ var li_tag = $(element); if (li_tag.hasClass('active')) { criteria.push({ 'name' : 'isCouponTarget', 'value' : li_tag.data('value') }); } }); $('#topForm').attr("action", $('#topForm').attr("action") + "/" + page); // 検索実行 ArtCampusCmnLib.search(criteria); }; ArtCampusCmnLib.coursePageLink = function(page) { // 検索条件を抽出 var criteria = ArtCampusCmnLib.searchCriteria(); // 詳細(申込受付状況) $('li[id^="side-detail-recept-"]').each(function(index, element){ var li_tag = $(element); if (li_tag.hasClass('active')) { criteria.push({ 'name' : 'holdYear', 'value' : li_tag.data('value') }); } }); //クーポン対象講座 $('li[id^="side-coupon"]').each(function(index, element){ var li_tag = $(element); if (li_tag.hasClass('active')) { criteria.push({ 'name' : 'isCouponTarget', 'value' : li_tag.data('value') }); } }); $('#artCampusSearchForm').attr("action", $('#artCampusSearchForm').attr("action") + "/" + page); // 検索実行 ArtCampusCmnLib.search(criteria); }; /** * ジャンルリンク 押下 */ ArtCampusCmnLib.genreLink = function(value, isHeader) { if (isHeader) { // 検索条件 var criteria = [{ 'name' : 'genreList', 'value' : value }]; // 検索実行 ArtCampusCmnLib.search(criteria); } else { // 検索条件(サイド)からリンクが押下された場合 ArtCampusCmnLib.searchCheck('side-genre-' + value); // 検索条件を抽出 var criteria = ArtCampusCmnLib.searchCriteria(); // 検索実行 ArtCampusCmnLib.search(criteria); } }; /** * キーワードリンク 押下 */ //キーワード:side-keyword-{値} ArtCampusCmnLib.keywordLink = function(value, isHeader) { if (isHeader) { // 検索条件 var criteria = [{ 'name' : 'keywordList', 'value' : value }]; // 検索実行 ArtCampusCmnLib.search(criteria); } else { // 検索条件(サイド)からリンクが押下された場合 ArtCampusCmnLib.searchCheck('side-keyword-' + value); // 検索条件を抽出 var criteria = ArtCampusCmnLib.searchCriteria(); // 検索実行 ArtCampusCmnLib.search(criteria); } }; /** *講座区分リンク 押下 */ // 区分:side-learning-div-{値} ArtCampusCmnLib.LearningDivLink = function(value, isHeader) { if (isHeader) { // 検索条件 var criteria = [{ 'name' : 'learningDivList', 'value' : value }]; // 検索実行 ArtCampusCmnLib.search(criteria); } else { // 検索条件(サイド)からリンクが押下された場合 ArtCampusCmnLib.searchCheck('side-learning-div-' + value); // 検索条件を抽出 var criteria = ArtCampusCmnLib.searchCriteria(); // 検索実行 ArtCampusCmnLib.search(criteria); } }; /** *キャンパスリンク 押下 */ // キャンパス:side-campus-{値} ArtCampusCmnLib.CampusLink = function(value, isHeader) { if (isHeader) { // 検索条件 var criteria = [{ 'name' : 'campusList', 'value' : value }]; // 検索実行 ArtCampusCmnLib.search(criteria); } else { // 検索条件(サイド)からリンクが押下された場合 ArtCampusCmnLib.searchCheck('side-campus-' + value); // 検索条件を抽出 var criteria = ArtCampusCmnLib.searchCriteria(); // 検索実行 ArtCampusCmnLib.search(criteria); } }; /** *単位連携リンク 押下 */ // 詳細検索(単位連携): side-detail-subject-{値} ArtCampusCmnLib.replaceSubjectLink = function(value, isHeader) { if (isHeader) { // 検索条件 var criteria = [{ 'name' : 'replaceSubjectList', 'value' : value }]; // 検索実行 ArtCampusCmnLib.search(criteria); } else { // 検索条件(サイド)からリンクが押下された場合 ArtCampusCmnLib.searchCheck('side-detail-subject-' + value); // 検索条件を抽出 var criteria = ArtCampusCmnLib.searchCriteria(); // 検索実行 ArtCampusCmnLib.search(criteria); } }; /** *開催形態リンク 押下 */ // 詳細検索(開講形態): side-detail-hold-{値} ArtCampusCmnLib.holdPatternLink = function(value, isHeader) { if (isHeader) { // 検索条件 var criteria = [{ 'name' : 'holdPatternList', 'value' : value }]; // 検索実行 ArtCampusCmnLib.search(criteria); } else { // 検索条件(サイド)からリンクが押下された場合 ArtCampusCmnLib.searchCheck('side-detail-hold-' + value); // 検索条件を抽出 var criteria = ArtCampusCmnLib.searchCriteria(); // 検索実行 ArtCampusCmnLib.search(criteria); } }; /** *年度リンク 押下 */ // 詳細検索(年度): side-detail-recept-{値} ArtCampusCmnLib.holdYearLink = function(value, isHeader) { if (isHeader) { // 検索条件 var criteria = [{ 'name' : 'holdYear', 'value' : value }]; // 検索実行 ArtCampusCmnLib.search(criteria); } else { // 検索条件(サイド)からリンクが押下された場合 ArtCampusCmnLib.searchCheck('side-detail-recept-' + value); // 検索条件を抽出 var criteria = ArtCampusCmnLib.searchCriteria(); criteria.push({ 'name' : 'holdYear', 'value' : value }) // 検索実行 ArtCampusCmnLib.search(criteria); } }; /** *クーポン対象リンク 押下 */ // クーポン対象講座 : side-coupon ※リンクはひとつだけ(onかoffか) ArtCampusCmnLib.couponLink = function(isHeader) { if (isHeader) { // 検索条件 var criteria = [{ 'name' : 'isCouponTarget', 'value' : true }]; // 検索実行 ArtCampusCmnLib.search(criteria); } else { // 検索条件(サイド)からリンクが押下された場合 var isActive = $('side-coupon').hasClass('active'); // 検索条件(サイド)からリンクが押下された場合 var criteria = ArtCampusCmnLib.searchCriteria(); criteria.push({ 'name' : 'isCouponTarget', 'value' : !isActive }) // 検索実行 ArtCampusCmnLib.search(criteria); } }; /** *フリーワード虫眼鏡 押下 */ // フリーワード : テキスト項目 ArtCampusCmnLib.freewordClick = function(isHeader) { if (isHeader) { var freeword = $('#header-freeword').val(); // 検索条件 var criteria = []; if(freeword){ criteria.push({ 'name' : 'freeword', 'value' : freeword }) } // 検索実行 ArtCampusCmnLib.search(criteria); } else { var freeword = $('#side-freeword').val(); // 検索条件(サイド)からリンクが押下された場合 var criteria = ArtCampusCmnLib.searchCriteria(); if(freeword){ criteria.push({ 'name' : 'freeword', 'value' : freeword }) } // 検索実行 ArtCampusCmnLib.search(criteria); } }; /** *お気に入りリンク 押下 */ ArtCampusCmnLib.favoriteLink = function() { // 検索条件 var criteria = [{ 'name' : 'isFavorite', 'value' : true }]; // 検索実行 ArtCampusCmnLib.search(criteria); }; //ネームスペース FavoriteUtil= {}; FavoriteUtil.setFavorite = function(sender, ajaxURL) { $.ajax({ url: ajaxURL, type: 'POST', beforeSend: function (request) { request.setRequestHeader($('meta[name="_csrf_token_header"]').attr('content'), $('meta[name="_csrf_token"]').attr('content')); }, data: "artcampuscode=" + $(sender).data('art') + "&action=" + !$(sender).children('.course-list-favorite').hasClass('active'), context: sender, }).then( function (res) { // お気に入りに入っているか if(res.isFavorite){ $(this).children('.course-list-favorite').addClass('active'); }else{ $(this).children('.course-list-favorite').removeClass('active'); } var obj = $(this).children('.course-list-favorite-count'); if (typeof obj !== "undefined") { if (res.count !== "") { $(this).children('.course-list-favorite-count').html("お気に入り登録者数:" + res.count + "人"); } else if(res.isLogin){ $(this).children('.course-list-favorite-count').html(""); } } } )}; jQuery(function($) { $('a[id^=schooling]').click(function(){ $('#topForm').attr('action', $(this).data('action')); CmnLib.submit('topForm'); }); });