$(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');
});
});