if (typeof itsmo == 'undefined') {
var itsmo = {};
}
if (typeof itsmo.vars == 'undefined') {
itsmo.vars = {};
}
if (typeof itsmo.season === 'undefined') {
itsmo.season = {};
}
itsmo.season.spring = {};
itsmo.season.spring.yozakura = 11;
itsmo.season.spring.init = function() {
$.getScript('/js/jquery.clearfield.packed.js', itsmo.season.spring.init2);
};
itsmo.season.spring.init2 = function() {
$('input.clearField').clearField().blur();
};
itsmo.season.spring.init_search = function() {
$('div.select-joken a').each(function() {
itsmo.season.spring.btn_toggle_set(this);
});
itsmo.season.spring.btn_select_set();
itsmo.season.spring.select_migoro_draw();
};
itsmo.season.spring.init_detail = function() {
$('div.detail-cp-tab div.sis-search-paka-more').hide();
};
//itsmo.season.spring.yozakuraNextPage = function(count) {
// $('#list-yozakura-' + itsmo.season.spring.yozakura).attr("style", "display:block");
// itsmo.season.spring.yozakura = itsmo.season.spring.yozakura + 10;
// if (itsmo.season.spring.yozakura > count) {
// $('#more-yozakura').attr("style", "display:none");
// }
//};
itsmo.season.spring.clearMigoro = function() {
$('#id_spring_col_migoro div.box-s strong').text('');
return false;
};
itsmo.season.spring.add_calendar = function(add) {
var i = $('#id_spring_cal_base').val();
var y = parseInt(i.substring(0, 4), 10);
var m = parseInt(i.substring(4, 6), 10) + add;
while (m <= 0) {
--y;
m += 12;
}
while (m >= 13) {
++y;
m -= 12;
}
y = y * 100 + m;
var max_cal_s = parseInt($('#id_max_cal_s').val(), 10);
var max_cal_e = parseInt($('#id_max_cal_e').val(), 10);
y = Math.max(y, max_cal_s);
y = Math.min(y, max_cal_e);
$('#id_spring_cal_base').val('' + y);
itsmo.season.spring.draw_calendar();
return false;
};
itsmo.season.spring.close_window = function() {
$('#id_spring_col_migoro div.sis-search-paka-waku0').fadeOut('fast');
$('#ajax_facet_tod_div, #ajax_facet_area_div').fadeOut('fast');
};
itsmo.season.spring._cal_s_old = null;
itsmo.season.spring._cal_e_old = null;
itsmo.season.spring.showMigoro = function() {
itsmo.season.spring.close_window();
itsmo.season.spring.draw_calendar();
itsmo.season.spring._cal_s_old = $("input:[name='flags_cal_s']").val();
itsmo.season.spring._cal_e_old = $("input:[name='flags_cal_e']").val();
$('#id_spring_col_migoro div.sis-search-paka-waku0').fadeIn('fast');
return false;
};
itsmo.season.spring.cancelMigoro = function() {
$("input:[name='flags_cal_s']").val(itsmo.season.spring._cal_s_old);
$("input:[name='flags_cal_e']").val(itsmo.season.spring._cal_e_old);
itsmo.season.spring.calendar_btn_submit();
return false;
};
itsmo.season.spring.draw_calendar = function() {
// カレンダー描画
var cal_s = $("input:[name='flags_cal_s']").val();
var cal_e = $("input:[name='flags_cal_e']").val();
var i = $('#id_spring_cal_base').val();
var d = new Date(parseInt(i.substring(0, 4), 10)
, parseInt(i.substring(4, 6), 10) - 1
, 1
);
cal_s = parseInt(cal_s, 10);
cal_e = parseInt(cal_e, 10);
if (cal_s >= 19010101 && (cal_e <= 0 || isNaN(cal_e))) {
cal_e = cal_s;
}
if (cal_e >= 19010101 && (cal_s <= 0 || isNaN(cal_s))) {
cal_s = cal_e;
}
var e = $('div.traffic-month0');
itsmo.season.spring.set_migoro_calendar(e.eq(0), d, cal_s, cal_e);
d = new Date(parseInt(i.substring(0, 4), 10)
, parseInt(i.substring(4, 6), 10)
, 1
);
itsmo.season.spring.set_migoro_calendar(e.eq(1), d, cal_s, cal_e);
};
itsmo.season.spring.set_migoro_calendar = function(e, d, cal_s, cal_e) {
var y = d.getFullYear();
var m = d.getMonth();
e.find('div.traffic-month div:first').text(y + '年' + (m + 1) + '月');
while (d.getDay() >= 1) {
d.setTime(d.getTime() - 24 * 60 * 60 * 1000);
}
e = e.find("table tr[name^='tracal']");
e.eq(5).hide();
for (var i = 0; i < 6; ++i) {
if (d.getFullYear() > y || d.getMonth() > m) {
break;
}
var f = e.eq(i).show().find('td');
for (var j = 0; j < 7; ++j) {
var elected = d.getFullYear() * 10000 + (d.getMonth() + 1) * 100 + d.getDate();
var s = '' + d.getDate() + '';
var exmonth = (d.getFullYear() != y || d.getMonth() != m);
elected = (elected >= cal_s) && (elected <= cal_e);
var div = null;
if (elected && exmonth) {
div = 'elect-exmonth';
} else if (elected) {
div = 'elected';
} else if (exmonth) {
div = 'exmonth';
}
if (null != div) {
s = '
' + s + '
';
}
f.eq(j).html(s);
d.setTime(d.getTime() + 24 * 60 * 60 * 1000);
}
}
};
itsmo.season.spring.select_migoro_cnt = 0;
itsmo.season.spring.select_migoro = function(e) {
e = $(e);
var i = e.attr('ref');
if (undefined == i) {
return false;
}
var e_cal_s = $("input:[name='flags_cal_s']");
var e_cal_e = $("input:[name='flags_cal_e']");
var cal_s = e_cal_s.val();
var cal_e = e_cal_e.val();
if('' != cal_s && '' != cal_e){ //二つとも入力されていたらリセットする
itsmo.season.spring.select_migoro_cnt = 0;
e_cal_s.val('');
e_cal_e.val('');
}
if ('' == cal_s || i < cal_s) {
e_cal_s.val(i);
itsmo.season.spring.select_migoro_cnt = 1;
} else if ('' == cal_e || i > cal_e) {
e_cal_e.val(i);
itsmo.season.spring.select_migoro_cnt = 0;
} else {
var n = 0 != itsmo.season.spring.select_migoro_cnt ? e_cal_e : e_cal_s;
n.val(i);
itsmo.season.spring.select_migoro_cnt = 0 != itsmo.season.spring.select_migoro_cnt ? 0 : 1;
}
itsmo.season.spring.select_migoro_draw();
itsmo.season.spring.draw_calendar();
return false;
};
itsmo.season.spring.select_migoro_draw = function() {
var e = $('#id_spring_col_migoro span.box-s');
var s = $("input:[name='flags_cal_s']").val();
if ('' == s) {
e.eq(0).html('日付指定なし');
} else {
e.eq(0).html('' + s.substring(0, 4) + '/' + s.substring(4, 6) + '/' + s.substring(6, 8) + '');
}
s = $("input:[name='flags_cal_e']").val();
if ('' == s) {
e.eq(1).html('日付指定なし');
} else {
e.eq(1).html('' + s.substring(0, 4) + '/' + s.substring(4, 6) + '/' + s.substring(6, 8) + '');
}
};
itsmo.season.spring.calendar_btn_cancel = function() {
$("input:[name^='flags_cal_']").val('');
return itsmo.season.spring.calendar_btn_submit();
};
itsmo.season.spring.calendar_btn_submit = function() {
itsmo.season.spring.close_window();
var e_cal_s = $("input:[name='flags_cal_s']");
var e_cal_e = $("input:[name='flags_cal_e']");
var cal_s = e_cal_s.val();
var cal_e = e_cal_e.val();
do {
if ('' == cal_s && '' == cal_e) {
break;
}
if ('' != cal_s && '' != cal_e) {
break;
}
if ('' == cal_s) {
cal_s = cal_e;
} else {
cal_e = cal_s;
}
e_cal_s.val(cal_s);
e_cal_e.val(cal_e);
} while (false);
itsmo.season.spring.select_migoro_draw();
return false;
};
itsmo.season.spring.btn_toggle_set = function(e) {
e = $(e);
var i = e.find('input:hidden:first');
var n = i.attr('name').substring(6);
if ('1' == i.val()) {
e.find('span:first').addClass(n).removeClass(n + '-off');
e.find('strong').addClass('joken-on');
} else {
e.find('span:first').removeClass(n).addClass(n + '-off');
e.find('strong').removeClass('joken-on');
}
return false;
};
itsmo.season.spring.btn_toggle = function(e) {
var f = $(e).find('input:hidden:first');
f.val('1' == f.val() ? '0' : '1');
itsmo.season.spring.btn_toggle_set(e);
return false;
};
itsmo.season.spring.chkbox_toggle = function(e) {
var f = $(e).find('span:first');
if (f.attr('class').indexOf('check-on') >= 0) {
f.removeClass('tel-check-on').addClass('tel-check-off');
} else {
f.addClass('tel-check-on').removeClass('tel-check-off');
}
return false;
};
itsmo.season.spring.btn_select_set = function() {
$('div.select-display').each(function() {
var e = $(this);
var i = parseInt(e.find('input:hidden:first').val(), 10);
var f = e.find('a');
f.each(function() {
var g = $(this).find('span');
g.eq(0).attr('class', 'btn-display-l');
g.eq(1).attr('class', 'btn-display');
g.eq(2).attr('class', 'btn-display-r');
});
i = Math.max(i, 0);
i = Math.min(i, f.length);
if (i >= 1) {
f = f.eq(i - 1).find('span');
f.eq(0).attr('class', 'btn-display-l-on');
f.eq(1).attr('class', 'btn-display-on');
f.eq(2).attr('class', 'btn-display-r-on');
}
});
return false;
};
itsmo.season.spring.btn_select = function(e) {
var p = $(e).parent();
var f = p.find('a');
var n = 0;
for (var i = 0; i < f.length; ++i) {
if (e == f.get(i)) {
n = i + 1;
break;
}
}
p = p.find('input:hidden:first');
f = parseInt(p.val());
if (f == n) {
//p.val('0');
} else {
p.val('' + (i + 1));
}
itsmo.season.spring.btn_select_set();
return false;
};
itsmo.season.spring.submit = function() {
var url = itsmo.season.spring.make_submit_url();
if (false == url) {
alert('エリアか見ごろ時期を選んでください。');
} else {
window.location.href = url;
}
};
itsmo.season.spring.make_submit_url = function(isXML) {
var flags = [];
var freewd = '';
var todid, diareacd, iareacd, cal_s, cal_e;
todid = diareacd = iareacd = cal_s = cal_e = '';
$("div.select-serch-area input[name^='flags_']").each(function() {
var e = $(this);
var s = e.attr('name').substring(6);
var n = e.val();
if ('0' != n && '' != n) {
} else {
return;
}
if ('todid' == s) {
todid = n;
} else if ('diareacd' == s) {
diareacd = n;
} else if ('iareacd' == s) {
iareacd = n;
} else if ('cal_s' == s) {
cal_s = n;
} else if ('cal_e' == s) {
cal_e = n;
} else {
flags.push(s + '=' + encodeURIComponent(n));
if ('freewd' == s) {
freewd = n;
}
}
});
if ('d' == isXML) {
diareacd = '';
iareacd = '';
if(todid == ''){
return false;
}
} else if ('i' == isXML) {
iareacd = '';
if(todid == ''){
return false;
}
}
var is_include_above = $('#id_include_above').attr('class').indexOf('-on') >= 0;
if ('' != freewd && !is_include_above) {
flags = ['freewd=' + encodeURIComponent(freewd)];
} else {
is_include_above = true;
}
if (isXML) {
flags.push('xml=' + isXML);
}
flags = flags.join('&');
var url = '/season/spring/';
var usearea = false, useday = false;
do {
if (!is_include_above) {
break;
}
if ('' == todid) {
break;
}
usearea = true;
url += 'area/' + todid + '/';
if ('' == diareacd) {
break;
}
url += diareacd + '/';
if ('' == iareacd) {
break;
}
url += iareacd + '/';
} while (false);
do {
if (!is_include_above) {
break;
}
if ('' == cal_s || '' == cal_e) {
break;
}
useday = true;
if (!usearea) {
url += 'day/';
}
url += cal_s.substring(4);
if (cal_s != cal_e) {
url += '-' + cal_e.substring(4);
}
url += '/';
} while (false);
if (!usearea && !useday && freewd.length <= 0) {
return false;
}
if ('' != flags) {
url += '?' + flags;
}
return url;
};
itsmo.season.spring.show_select_tod = function() {
itsmo.season.spring.close_window();
$('#ajax_facet_tod_div').fadeIn('fast');
};
itsmo.season.spring.tod_submit = function(e) {
itsmo.season.spring.close_window();
e = $(e);
var todid = e.attr('ref');
var name = e.text();
itsmo.season.spring.clear_area();
$('#id_spring_tod_nm').val(name);
$("input:hidden[name='flags_todid']").val(todid);
$('#id_spring_col_area span.box-s:first').text(name);
itsmo.season.spring.set_area_select_box();
return false;
};
itsmo.season.spring.area_submit = function(e) {
itsmo.season.spring.close_window();
e = $(e);
var id = e.attr('ref');
var name = e.text();
name = name.substring(0, name.indexOf('('));
var s = 'diareacd';
var offset = 1;
$("input:hidden[name='flags_iareacd']").val('');
if (id.indexOf('-') < 0) {
s = 'iareacd';
offset = 2;
} else {
$('#id_spring_diarea_nm').val(name);
}
$("input:hidden[name='flags_" + s + "']").val(id);
e = $('#id_spring_col_area span')
e.eq(1 + offset * 4).text(itsmo.c.limitString(name, 9));
if (1 == offset) {
e.eq(9).text('選択してください');
}
itsmo.season.spring.set_area_select_box();
return false;
};
itsmo.season.spring.set_area_select_box = function() {
var e = $('#id_spring_col_area span');
var s = '-off';
var todid = $("input:hidden[name='flags_todid']").val();
var diareacd = $("input:hidden[name='flags_diareacd']").val();
var iareacd = $("input:hidden[name='flags_iareacd']").val();
if ('' != todid) {
s = '';
if ('' == diareacd) {
e.eq(5).text('選択してください');
}
}
e.eq(5).attr('class', 'box-s' + s);
var s = '-off';
if ('' != diareacd) {
s = '';
if ('' == iareacd) {
e.eq(9).text('選択してください');
}
}
e.eq(9).attr('class', 'box-s' + s);
};
itsmo.season.spring.clear_area = function() {
$("input:hidden[name='flags_todid']").val('');
$("input:hidden[name='flags_diareacd']").val('');
$("input:hidden[name='flags_iareacd']").val('');
var e = $('#id_spring_col_area span');
e.eq(1).text('選択してください');
e.eq(5).text('');
e.eq(9).text('');
itsmo.season.spring.set_area_select_box();
};
itsmo.season.spring.show_select_area = function(type) {
if ('i' == type) {
di = $("input:hidden[name='flags_diareacd']").val();
if (!di || di == '') {return;}
}
itsmo.season.spring.close_window();
var i;
if ('d' == type) {
i = $('#id_spring_tod_nm').val();
} else {
i = $('#id_spring_diarea_nm').val();
}
$('#ajax_facet_area_seltitle').text(i);
var url = itsmo.season.spring.make_submit_url(type);
if(url != false){
url = url.split('?');
itsmo.lib.XMLHttpRequest2_send(url[0], itsmo.season.spring.show_select_area_callback, 'get', url[1]);
}
};
itsmo.season.spring.show_select_area_callback = function(result) {
result = $(result);
var err = parseInt(result.find('err').text(), 10);
var e = $('#ajax_facet_area_div ul');
do {
if (err != 0) {
e.eq(0).hide();
e.eq(1).show();
break;
}
result = result.find('data');
e.eq(1).hide();
e.eq(0).show().find('li').each(function(i) {
var f = $(this);
if (i >= result.length) {
f.hide();
return;
}
i = result.eq(i);
f.show().find('a').attr('ref', i.find('id').text());
f.find('a').text(i.find('nm').text()).append('(' + i.find('num').text() + ')');
});
} while (false);
$('#ajax_facet_area_div').fadeIn('fast');
};
itsmo.season.spring.open_more_tab = function() {
var t = $('div.detail-cp-tab div.sis-search-paka-more');
var isShow = t.is(':visible');
if (isShow) {
t.fadeOut('fast');
return false;
}
t.fadeIn('fast');
return false;
};
itsmo.season.spring.resetNextPlaceParty = function() {
var e = $('div.basic-con ul.image-Listul');
e.eq(0).find('li:gt(2)').hide();
e.eq(1).find('li:gt(2)').hide();
$('div.cp-info').show();
$('div.cp-info p.Listul-more').show().filter(':odd').hide();
window.location.hash = '#restaurant';
};
itsmo.season.spring.openNextPlaceParty = function(e) {
e = $(e).parent().parent();
e.parent().find('li').show();
e.find('p').show().eq(0).hide();
$('div.cp-info:has(p.Listul-more)').hide();
e.parent().show();
};
itsmo.season.spring.forecastCrowdGetTables = function() {
return $('div.cp-info table[id^="id_crowd_"]');
};
itsmo.season.spring.forecastCrowdGetPos = function() {
var n = -1;
itsmo.season.spring.forecastCrowdGetTables().each(function(i, e) {
if ($(e).is(':visible')) {
n = i;
return false;
}
});
return n;
};
itsmo.season.spring.forecastIDInfo = function(e) {
var i = e.attr('id').split('_');
var y = parseInt(i[2], 10);
var m = parseInt(i[3], 10);
var h = parseInt(i[4], 10);
return [y, m, h];
};
itsmo.season.spring.forecastMakeID = function(y, m, h) {
return 'id_crowd_' + y + '_' + m + '_' + h;
};
itsmo.season.spring.forecastCrowdMoveMonth = function(add) {
var n = itsmo.season.spring.forecastCrowdGetPos();
if (n < 0) {
return false;
}
var e = itsmo.season.spring.forecastCrowdGetTables();
var i = itsmo.season.spring.forecastIDInfo(e.eq(n));
i[1] += add;
var m = i[1];
i = itsmo.season.spring.forecastMakeID(i[0], i[1], i[2]);
var f = $('#' + i);
if (f.length >= 1) {
e.hide();
f.show();
itsmo.season.spring.forecastCrowdSetText(f);
e = $('div.crowded-pg a.pre');
var cls = '';
if (m <= 3) {
e.hide();
cls = 'firstmonth';
} else {
e.show();
}
e = $('div.crowded-pg a.next');
if (m >= 5) {
e.hide();
cls = 'lastmonth';
} else {
e.show();
}
$('div.crowded-pg strong:first').attr('class', cls);
}
};
itsmo.season.spring.forecastCrowdSetText = function(e) {
var i = itsmo.season.spring.forecastIDInfo(e);
var y = '' + i[0];
var m = '' + i[1];
$('#id_crowd_year').text(y);
$('#id_crowd_month').text(m);
};
itsmo.season.spring.forecastCrowdChangeTime = function() {
var h = $('#id_crowd_time').val();
var n = itsmo.season.spring.forecastCrowdGetPos();
var e = itsmo.season.spring.forecastCrowdGetTables();
var i = itsmo.season.spring.forecastIDInfo(e.eq(n));
i = itsmo.season.spring.forecastMakeID(i[0], i[1], h);
e.hide();
$('#' + i).show();
};
var _initGoogleTagService = false;
itsmo.season.spring.initGoogleTagService = function() {
if (_initGoogleTagService) {
return;
}
_initGoogleTagService = true;
var useSSL = 'https:' == document.location.protocol;
var gads = (useSSL ? 'https:' : 'http:') + '//www.googletagservices.com/tag/js/gpt.js';
$.getScript(gads);
};
var googletag = googletag || {};
googletag.cmd = googletag.cmd || [];
itsmo.season.spring.g_map_obj = null;
itsmo.season.spring.initMapDetail = function(){
if (typeof ZDC === 'undefined' || typeof ZDC.Map === 'undefined') {
return;
}
var lvl = 10;
var e = $(".sis-access-map input[type='hidden'][name='spring_detail']").val().split(',');
var url = $(".access-map-btn #mapLink").attr('href');
var lat = parseInt(e[0], 10) / (60 * 60 * 1000);
var lon = parseInt(e[1], 10) / (60 * 60 * 1000);
var latlon = new ZDC.LatLon(lat, lon);
ZDC._TILE_PATHS["4"] = ZDC._TILE_PATHS["ond/42"];
itsmo.season.spring.g_map_obj = new ZDC.Map(
$('#springMap').get(0),
{
mapType: ZDC.MAPTYPE_COLOR,
latlon: latlon,
zoom: lvl
}
);
itsmo.season.spring.g_map_obj.dragOn();
itsmo.season.spring.g_map_obj.zoomOn();
ZDC.addListener(itsmo.season.spring.g_map_obj, ZDC.MAP_CLICK, function(){
var latlon = itsmo.season.spring.g_map_obj.getClickLatLon();
itsmo.season.spring.g_map_obj.moveLatLon(latlon);
});
e = new ZDC.UserWidget(latlon, {
size: new ZDC.WH(22, 34),
html: '',
offset: new ZDC.Pixel(-10, -29)
});
itsmo.season.spring.g_map_obj.addWidget(e);
e.open();
var sz = new ZDC.WH(32, 32);
e = new ZDC.StaticUserWidget({ top: 8, left: 8}, {
html: '',
size: sz
});
itsmo.season.spring.g_map_obj.addWidget(e);
e.open();
// -ボタン
e = new ZDC.StaticUserWidget({ top: 39, left: 8}, {
html: '',
size: sz
});
itsmo.season.spring.g_map_obj.addWidget(e);
e.open();
};
itsmo.season.spring.searchPage = function (page) {
var url = URL_FOR_PAGING;
if (url.indexOf('?') != -1) {
url += '&page=' + page;
} else {
url += '?page=' + page;
}
window.location.href = url;
};
itsmo.season.spring.congestionDaily = null;
itsmo.season.spring.congestionHourly = null;
itsmo.season.spring.congestionStay = null;
itsmo.season.spring.initCongestionChart = function (isSmartphone) {
itsmo.season.spring.createBarChart(isSmartphone);
if (itsmo.season.spring.congestionStay){
if (typeof itsmo.season.spring.congestionStay.common != 'undefined') {
itsmo.season.spring.createCommonPieChart();
} else {
itsmo.season.spring.createPieChart();
}
}
itsmo.season.spring.createLineChart();
};
itsmo.season.spring.createBarChart = function(isSmartphone){
var weekday = [];
var holiday = [];
var weekdayLabels = [];
var holidayLabels = [];
var hourlyLabels = [];
if (!itsmo.season.spring.congestionHourly){
return;
}
if (typeof itsmo.season.spring.congestionHourly.weekday != 'undefined') {
$.each(itsmo.season.spring.congestionHourly.weekday, function (i, v) {
weekday.push(v.visitor_count);
if (isSmartphone && Math.abs(i % 2) == 1){
weekdayLabels.push('');
} else {
weekdayLabels.push(v.time + '時');
}
});
}
if (typeof itsmo.season.spring.congestionHourly.holiday != 'undefined') {
$.each(itsmo.season.spring.congestionHourly.holiday, function (i, v) {
holiday.push(v.visitor_count);
if (isSmartphone && Math.abs(i % 2) == 1){
holidayLabels.push('');
} else {
holidayLabels.push(v.time + '時');
}
});
};
var ctx = document.getElementById("bar2-chart");
if (weekday.length == 0 && holiday.length == 0){
return;
}
if (weekdayLabels.length > holidayLabels.length){
hourlyLabels = weekdayLabels;
} else {
hourlyLabels = holidayLabels;
}
var myBarChart = new Chart(ctx, {
//グラフの種類
type: 'bar',
//データの設定
data: {
//データ項目のラベル
labels: hourlyLabels,
//データセット
datasets: [{
//凡例
label: "平日",
//背景色
backgroundColor: "rgba(201,215,68,0.4)",
//枠線の色
borderColor: "rgba(201,215,68,1)",
//グラフのデータ
data: weekday
},
{
//凡例
label: "休日",
//背景色
backgroundColor: "rgba(215,132,126,0.4)",
//枠線の色
borderColor: "rgba(215,132,126,1)",
//グラフのデータ
data: holiday
}
]
}, options: {
//ツールチップ非表示
tooltips: {
enabled: false
},
scales: {
//縦軸非表示
yAxes: [{
display: false
}]
}
}
});
};
itsmo.season.spring.createPieChart = function(){
var weekday = [];
var holiday = [];
var weekdayLabels = [];
var holidayLabels = [];
if (!itsmo.season.spring.congestionStay){
return;
};
var arrStay = {'01':'15分~30分', '02':'30分~1時間', '03':'1時間~3時間', '04':'3時間~6時間', '05':'6時間~12時間', '06':'12時間以上'};
if (typeof itsmo.season.spring.congestionStay.weekday !='undefined'){
$.each(itsmo.season.spring.congestionStay.weekday, function (i, v) {
weekday.push(v.visitor_count);
weekdayLabels.push(arrStay[v.stay]);
});
}
if (typeof itsmo.season.spring.congestionStay.holiday !='undefined'){
$.each(itsmo.season.spring.congestionStay.holiday, function (i, v) {
holiday.push(v.visitor_count);
holidayLabels.push(arrStay[v.stay]);
});
}
var ctx = document.getElementById("pie-chart_wd");
var myPieChart = new Chart(ctx, {
//グラフの種類
type: 'pie',
//データの設定
data: {
//データ項目のラベル
labels: weekdayLabels,
//データセット
datasets: [{
//背景色
backgroundColor: [
"#d7847e",
"#ebc061",
"#f8e352",
"#c9d744",
"#b2d6d4",
"#b4d6b2"
],
//背景色(ホバーしたとき)
hoverBackgroundColor: [
"#d7847e",
"#ebc061",
"#f8e352",
"#c9d744",
"#b2d6d4",
"#b4d6b2"
],
//グラフのデータ
data: weekday
}]
}, options: {
legend: {
labels: {
boxWidth: 20,
fontSize: 12
}
},
title: {
display: true,
text: '平日',
fontColor: '#333',
padding: 5
},
tooltips: {
callbacks: {
label: function(tooltipItem, data) {
var allData = data.datasets[tooltipItem.datasetIndex].data;
var tooltipLabel = data.labels[tooltipItem.index];
var tooltipData = allData[tooltipItem.index];
var total = 0;
for (var i in allData) {
total += parseInt(allData[i]);
}
var tooltipPercentage = Math.round((tooltipData / total) * 100);
return tooltipLabel + ':' +tooltipPercentage + '%';
}
}
}
}
});
ctx = document.getElementById("pie-chart_hd");
myPieChart = new Chart(ctx, {
//グラフの種類
type: 'pie',
//データの設定
data: {
//データ項目のラベル
labels: holidayLabels,
//データセット
datasets: [{
//背景色
backgroundColor: [
"#d7847e",
"#ebc061",
"#f8e352",
"#c9d744",
"#b2d6d4",
"#b4d6b2"
],
//背景色(ホバーしたとき)
hoverBackgroundColor: [
"#d7847e",
"#ebc061",
"#f8e352",
"#c9d744",
"#b2d6d4",
"#b4d6b2"
],
//グラフのデータ
data: holiday
}]
}, options: {
legend: {
labels: {
boxWidth: 20,
fontSize: 12
}
},
title: {
display: true,
text: '休日',
fontColor: '#333',
padding: 5
},
tooltips: {
callbacks: {
label: function(tooltipItem, data) {
var allData = data.datasets[tooltipItem.datasetIndex].data;
var tooltipLabel = data.labels[tooltipItem.index];
var tooltipData = allData[tooltipItem.index];
var total = 0;
for (var i in allData) {
total += parseInt(allData[i]);
}
var tooltipPercentage = Math.round((tooltipData / total) * 100);
return tooltipLabel + ':' +tooltipPercentage + '%';
}
}
}
}
});
};
itsmo.season.spring.createLineChart = function(){
var dailyLabels = [];
var data = [];
if (!itsmo.season.spring.congestionDaily){
return;
}
$.each(itsmo.season.spring.congestionDaily, function (i, v) {
dailyLabels.push(v.date);
data.push(v.visitor_count);
});
ctx = document.getElementById("line-chart");
var myLine2Chart = new Chart(ctx, {
//グラフの種類
type: 'line',
//データの設定
data: {
//データ項目のラベル
labels: dailyLabels,
//データセット
datasets: [
{
//凡例
label: '人数',
//面の表示
fill: false,
//線のカーブ
lineTension: 0,
//背景色
backgroundColor: "rgba(179,181,198,0.2)",
//枠線の色
borderColor: "rgba(179,181,198,1)",
//結合点の枠線の色
pointBorderColor: "rgba(179,181,198,1)",
//結合点の背景色
pointBackgroundColor: "#fff",
//結合点のサイズ
pointRadius: 5,
//結合点のサイズ(ホバーしたとき)
pointHoverRadius: 8,
//結合点の背景色(ホバーしたとき)
pointHoverBackgroundColor: "rgba(179,181,198,1)",
//結合点の枠線の色(ホバーしたとき)
pointHoverBorderColor: "rgba(220,220,220,1)",
//結合点より外でマウスホバーを認識する範囲(ピクセル単位)
pointHitRadius: 15,
//グラフのデータ
data: data
}
]
},
//オプションの設定
options: {
legend: {
display: false
},
tooltips: {
enabled: false
},
scales: {
yAxes: [{
display: false
}]
}
}
});
};
itsmo.season.spring.createCommonPieChart = function(){
var data = [];
var stayLabels = [];
var arrStay = {'01':'15分~30分', '02':'30分~1時間', '03':'1時間~3時間', '04':'3時間~6時間', '05':'6時間~12時間', '06':'12時間以上'};
$.each(itsmo.season.spring.congestionStay.common, function (i, v) {
data.push(v.visitor_count);
stayLabels.push(arrStay[v.stay]);
});
var ctx = document.getElementById("pie-chart");
var myPieChart = new Chart(ctx, {
//グラフの種類
type: 'pie',
//データの設定
data: {
//データ項目のラベル
labels: stayLabels,
//データセット
datasets: [{
//背景色
backgroundColor: [
"#d7847e",
"#ebc061",
"#f8e352",
"#c9d744",
"#b2d6d4",
"#b4d6b2"
],
//背景色(ホバーしたとき)
hoverBackgroundColor: [
"#d7847e",
"#ebc061",
"#f8e352",
"#c9d744",
"#b2d6d4",
"#b4d6b2"
],
//グラフのデータ
data: data
}]
}, options: {
legend: {
position:'right',
labels:{
boxWidth:20,
fontSize:11
}
},
tooltips: {
callbacks: {
label: function(tooltipItem, data) {
var allData = data.datasets[tooltipItem.datasetIndex].data;
var tooltipLabel = data.labels[tooltipItem.index];
var tooltipData = allData[tooltipItem.index];
var total = 0;
for (var i in allData) {
total += parseInt(allData[i]);
}
var tooltipPercentage = Math.round((tooltipData / total) * 100);
return tooltipLabel + ':' +tooltipPercentage + '%';
}
}
}
}
});
};