;(function($){var PLUGIN_NAME = "selectdefault";
var ImplementationClass = function (target, config) {var settings = $.extend({}, $[PLUGIN_NAME].defaults, config);var myself=this;var url='https://api.docodoco.jp/v4/search?key1=KWwYgjSpSXkJ2k4bWMbBNMjqqWY1hfBDJDq1hjHDAmmknD2u2Fzhw1k296ZJ6dZF&key2=9f816d98b76e4c646547c0897d0ccec75b7e4f75&format=json';$(target).data(PLUGIN_NAME, myself);
function _constructor_() {$(target).find(".pulldown a").each(function() {$(this).on('click', myself.changeGroup);var areainfo = settings.areaInfo;for (var key in areainfo) {if($(this).html()==areainfo[key].area_name+'版') {$(this).attr('area_name', key);break;}}});
var area_name=getCookie('default_area');var docodoco=false;
//if(!area_name){docodoco=true;area_name=settings.defaultArea;popupBaloon();}
if(!area_name){area_name='syutoken';}
if(settings.initFunction) {settings.initFunction(area_name); } myself.changeArea(area_name);if(docodoco){docodocoUpdate();}}
$.extend( myself, { changeArea: function (selectArea) {var areaName = settings.areaInfo[selectArea].area_name,frightStartName = settings.areaInfo[selectArea].fright_start_name,nameList = settings.changeAreaName;
$(target).find("span").html(areaName+'版');
$(target).find(".pulldown a").each(function () {if ($(this).html() == areaName+'版') {$(this).addClass('selected');} else {$(this).removeClass('selected');}});
for (var key in nameList) {
if ( $('#fixarea_'+nameList[key]).val() ){if ( $('#'+nameList[key]).html() == '' ){var geturl = settings.prefix + $('#fixarea_'+nameList[key]).val() + "_" + nameList[key] + settings.ext;updateContentArea(geturl, "#"+nameList[key], selectArea);}
}else{var geturl = settings.prefix + selectArea + "_" + nameList[key] + settings.ext;updateContentArea(geturl, "#"+nameList[key], selectArea);}
}
$("#dep").val(frightStartName);$(".area_name").html(areaName);
$(target).attr("data-active-area", selectArea).attr("data-active-fright", frightStartName);
if(settings.afterFunction) settings.afterFunction(selectArea);return target;},
changeGroup: function () {var area_name = $(this).attr('area_name');if (area_name) {myself.changeArea(area_name);setCookie('default_area', area_name, 'Thu, 30 Dec 2049 23:59:59 GMT', '/');}return target;},
havingnopoint: "" });_constructor_();
function updateContentArea(geturl, selector, selectArea) {
$(selector).trigger('destroyChildren').fadeTo(100, 0.01, function() {
$.ajax({
url: geturl,dataType : "html",
cache: false}).done(function (data) {
$(selector).html(data).trigger('createChildren');
$(selector).fadeTo(700, 1.0);
if ( selector == "#topbox" ){
$('#topbox > p').hide();
$('#topbox > ul.bxslider li:gt(3)').hide();
$('#thumbox > li:gt(3)').hide();
var r = 0;
switch( selectArea ){
// ▼発地選択毎にメインビジュアルバナーのランダム選択ON/OFF
// ↓行頭の //case を case に変更(//を削除)すると固定になります。
//case "hokkaido": break; // 北海道 固定
//case "kansai" : break; // 関西 固定
//case "kyusyu" : break; // 九州 固定
//case "syutoken": break; // 首都圏 固定
//case "tyubu" : break; // 中部 固定
//case "tyugoku" : break; // 中国 固定
// その他 ランダム選択
default:
var tblen = $('#topbox > ul.bxslider li:visible').length;
r = Math.floor(Math.random()*tblen);
}
//console.log(selectArea +'='+ r);
$('#topbox > ul.bxslider li').hide();
$('#topbox > ul.bxslider li:eq('+r+')').show();
$('#thumbox > li:eq('+r+')').hide();
$('#thumbox > li > a > img').width(210).height(120);
$('#thumbox li:first-child').css('margin-left','7px');
}
}).fail(function (data) {});
});
}
function getCookieValue(offset) {var endstr = document.cookie.indexOf(";", offset);if (endstr == -1) { endstr = document.cookie.length; }return decodeURIComponent(document.cookie.substring(offset, endstr));}
function getCookie(name) {var arg = name + "=";var alen = arg.length;var clen = document.cookie.length;var i = 0;while (i < clen) {var j = i + alen;if (document.cookie.substring(i, j) == arg) {return getCookieValue(j);}i = document.cookie.indexOf(" ", i) + 1;if (i == 0) break;}}
function setCookie(name, value, expires, path, domain, secure) {document.cookie = name + "=" + encodeURIComponent(value) + ((expires) ? "; expires=" + expires : "" ) + ((path) ? "; path=" + path : "" ) + ((domain) ? "; domain=" + domain : "" ) + ((secure) ? "; secure" : "" );}
function deleteCookie(name, path, domain) {if(getCookie(name)) {document.cookie = name + "=" + ((path) ? "; path=" + path : "" ) + ((domain) ? "; domain=" + domain : "" ) + "; expires=Thu, 01-Jan-70 00:00:01 GMT";}}
function popupBaloon() {var $baloon = $("img", "#headerBaloon");$baloon.height(0);$baloon.css({top: 35, position: 'absolute'});$baloon.delay(1000).animate({opacity: 'show', rotate: '5deg', height: 80, top: -5}, {duration: 300}).animate({rotate: '-4deg', height: 36}, {duration: 200}).animate({rotate: '3deg', height: 43}, {duration: 100}).animate({rotate: '-2deg', height: 38}, {duration: 90}).animate({rotate: '0deg', height: 40}, {duration: 80});}
function docodocoUpdate() {$.ajax({type: "get", url: url, dataType: "json", success: function (data, res) {
if (!data.status && res == 'success') {var map = settings.areaMapping;for (var key in map) {for (var i = 0; i < map[key].length; i++) {if (map[key][i] == data.PrefCode) {myself.changeArea(key);break;}}}}
}});}
}; $[PLUGIN_NAME] = {defaults : {prefix : '/area/', ext: '.html', defaultArea: 'default', changeArea: [], changeAreaName: [], areaInfo: {}, initFunction: null, afterFunction: null}};
$.fn[PLUGIN_NAME] = function(config){return this.each(function(i){implClass = new ImplementationClass(this, config);});};
})(jQuery);