/******/ (function (modules) {
// webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if (installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/
}
/******/ // Create a new module (and put it into the cache)
/******/ var module = (installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {},
/******/
});
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(
module.exports,
module,
module.exports,
__webpack_require__
);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/
}
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function (exports, name, getter) {
/******/ if (!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter,
/******/
});
/******/
}
/******/
};
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function (module) {
/******/ var getter =
module && module.__esModule
? /******/ function getDefault() {
return module["default"];
}
: /******/ function getModuleExports() {
return module;
};
/******/ __webpack_require__.d(getter, "a", getter);
/******/ return getter;
/******/
};
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function (object, property) {
return Object.prototype.hasOwnProperty.call(object, property);
};
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__((__webpack_require__.s = 0));
/******/
})(
/************************************************************************/
/******/ [
/* 0 */
/***/ function (module, exports, __webpack_require__) {
__webpack_require__(1);
module.exports = __webpack_require__(3);
/***/
},
/* 1 */
/***/ function (module, exports, __webpack_require__) {
/**
* First we will load all of this project's JavaScript dependencies which
* includes Vue and other libraries. It is a great starting point when
* building robust, powerful web applications using Vue and Laravel.
*/
// require('./bootstrap');
__webpack_require__(2);
// window.Vue = require('vue');
/**
* Next, we will create a fresh Vue application instance and attach it to
* the page. Then, you may begin adding components to this application
* or customize the JavaScript scaffolding to fit your unique needs.
*/
//Vue.component('example-component', require('./components/ExampleComponent.vue'));
// const app = new Vue({
// el: '#app'
// });
window.showMessage = function (
{ message, contentClass = "", btnTitle, btnClass },
callback = () => {}
) {
$.confirm({
title: "",
content:
'
' +
message +
"
",
onOpenBefore: function () {
$(".jconfirm-buttons").addClass(
"d-flex justify-content-center m-auto w-100"
);
},
buttons: {
Cancel: {
text: btnTitle ? btnTitle : "戻る",
btnClass: `btn ${
btnClass ? btnClass : "btn-success"
} col-4`,
action: callback,
},
},
});
};
var inputSessionMessage = $('input[name=session-message]')
if (inputSessionMessage.length != 0 && inputSessionMessage.val() != "") {
let btnTitle = inputSessionMessage.attr("button-title");
let btnClass = inputSessionMessage.attr("button-class");
showMessage({
message: inputSessionMessage.val(),
btnTitle: btnTitle,
btnClass: btnClass,
});
}
$("#checkbox_all").on("ifChecked ifUnchecked", function (event) {
if (event.type == "ifChecked") {
$("input.checkbox:not(:disabled)").iCheck("check");
} else {
$("input.checkbox:not(:disabled)").iCheck("uncheck");
}
});
$(".checkbox_all").on("ifChecked ifUnchecked", function (event) {
if (event.type == "ifChecked") {
$("input.checkbox:not(:disabled)").iCheck("check");
} else {
$("input.checkbox:not(:disabled)").iCheck("uncheck");
}
});
$("input[name='pk[]']").on(
"ifChecked ifUnchecked",
function (event) {
let list = $("#form_delete").find('input[name="pk[]"]');
let currentValue = $(this).val();
$.each(list, function () {
let value = $(this).val();
if (value == currentValue) {
if (event.type == "ifChecked") {
$(this).iCheck("check");
} else {
$(this).iCheck("uncheck");
}
}
});
}
);
$("#delete").on("click", function () {
var mes = getMesDelete(this);
confirm("確認ダイアログ。", mes, function () {
$("#form_delete").submit();
});
});
// function getMesDelete(e) {
// var mes = '';
// if ($(e).hasClass('mesShort')) {
// mes = '削除してよろしいですか?はい/いいえ';
// } else if ($(e).hasClass('mesLong')) {
// mes = '!※※※このレコードは他のテーブルから参照されている可能性があります。削除の際は十分注意してください。※※※\n' +
// '
チェックボックスにて選択したレコードを削除してよろしいでしょうか?';
// }
// else {
// mes = '!※※※このレコードは他のテーブルから参照されている可能性があります。削除の際は十分注意してください。\n' +
// '※※※ チェックボックスにて選択したレコードを削除してよろしいでしょうか?はい/いいえ';
// }
//
// return mes;
// }
function getMesDelete(e) {
var mes = "";
if ($(e).hasClass("mesShort")) {
mes = "削除してよろしいですか?はい/いいえ";
} else {
mes =
"!※※※このレコードは他のテーブルから参照されている可能性があります。削除の際は十分注意してください。※※※\n" +
"
チェックボックスにて選択したレコードを削除してよろしいでしょうか?";
}
return mes;
}
$(".setting_all").on("click", function (e) {
e.preventDefault();
var setting = $(this).attr("setting"),
msg = "";
$("#setting_all").val(setting);
if (setting == "_a") {
msg =
"!マスタ群をA群からB群へコピーします。コピー先のB群はコピー前にすべて削除されます。この作業は元に戻せません。コピーしてよろしいですか?";
} else if (setting == "_b") {
msg =
"!マスタ群をB群からA群へコピーします。コピー先のA群はコピー前にすべて削除されます。この作業は元に戻せません。コピーしてよろしいですか?";
}
confirm("コピー確認。", msg, function () {
$("#form_change_settings").submit();
});
});
$(".setting_single").on("click", function (e) {
e.preventDefault();
$("#btn_data").val($(this).val());
confirm(
"確認ダイアログ。",
"登録してよろしいですか?はい/いいえ",
function () {
$("#form_change_settings").submit();
}
);
});
$("#import_csv").on("click", function () {
var action = $(this).attr("action"),
token = $('meta[name="csrf-token"]').attr("content"),
content =
"!データをインポートします。既存のデータは全て削除します。継続してよろしいですか? はい/いいえ";
if ($(this).hasClass("swa55")) {
content =
"!データをインポートします。既存のデータを上書きする場合は変更したい利用者連番を指定してください。新規追加の場合、利用者連番は空欄のままインポートしてください。";
} else if ($(this).hasClass("swa56")) {
content =
"!データをインポートします。既存のデータを上書きする場合は変更したい定期契約IDを指定してください。新規追加の場合、定期契約IDは空欄のままインポートしてください。";
}
$.confirm({
title: "確認",
content:
'",
buttons: {
formSubmit: {
text: "はい",
btnClass: "btn-blue",
action: function action() {
$("#form_import").submit();
},
},
いいえ: function _() {
//close
},
},
});
});
$(".delete-record").on("click", function (e) {
e.preventDefault();
let link = $(this).attr("href");
let message = $(this).attr("delete-message");
if (message == undefined || message == "") {
message = "!削除してよろしいでしょうか?";
}
$.confirm({
title: "確認ダイアログ。",
content: message,
buttons: {
ok: {
text: "はい",
btnClass: "btn-blue",
action: function () {
window.location.replace(link);
},
},
いいえ: function () {
//close
},
},
});
});
$("#export_csv").on("click", function (e) {
e.preventDefault();
var _action = $(this).attr("action"),
text = "?isExport=1",
user_id = $("#user_id").val(),
member_id = $("#member_id").val(),
user_tag_serial = $("#user_tag_serial").val(),
ser_tag_serial_64 = $("#user_tag_serial_64").val(),
user_phonetic = $("#user_phonetic").val(),
phone = $("#phone").val(),
user_categoryid = $("#user_categoryid").val(),
user_primemail = $("#user_primemail").val(),
user_workplace = $("#user_workplace").val(),
user_school = $("#user_school").val(),
reserve_date_from = $("#reserve_date_from").val(),
reserve_date_to = $("#reserve_date_to").val(),
contract_created_at_from = $(
"#contract_created_at_from"
).val(),
contract_created_at_to = $("#contract_created_at_to").val(),
contract_cancelday_from = $(
"#contract_cancelday_from"
).val(),
contract_cancelday_to = $("#contract_cancelday_to").val(),
contract_payment_day_from = $(
"#contract_payment_day_from"
).val(),
contract_payment_day_to = $(
"#contract_payment_day_to"
).val(),
enable_months = $("#enable_months").val(),
update_flag = $("#update_flag").val(),
contract_seal_issue = $("#contract_seal_issue").val(),
m800_flag = $("#m800_flag").val(),
park_position = $("#park_position").val(),
park_id = $("#park_id").val(),
sort = $("#sort").val(),
sort_type = $("#sort_type").val(),
sort_order = $("#sort_order").val(),
que_status = $("#que_status").val(),
usertype_subject1 = $("#usertype_subject1").val(),
usertype_subject2 = $("#usertype_subject2").val(),
usertype_subject3 = $("#usertype_subject3").val(),
s_list = $('input[name="s_list"]:checked').val(),
date_from = $("#date_from").val(),
date_to = $("#date_to").val(),
contract_id = $("#contract_id").val(),
park_id = $("#park_id").val(),
ptype_id = $("#ptype_id").val(),
psection_id = $("#psection_id").val(),
zone_id = $("#zone_id").val(),
reserve_date_before = $("#reserve_date_before").val(),
contract_created_at_before = $(
"#contract_created_at_before"
).val(),
contract_cancelday_before = $(
"#contract_cancelday_before"
).val(),
contract_payment_day_before = $(
"#contract_payment_day_before"
).val(),
tag_qr_flag = $('#tag_qr_flag').val();
if (s_list) {
text = text + "&s_list=" + s_list;
}
if (date_from) {
text = text + "&date_from=" + date_from;
}
if (date_to) {
text = text + "&date_to=" + date_to;
}
if (user_id) {
text = text + "&user_id=" + user_id;
}
if (member_id) {
text = text + "&member_id=" + member_id;
}
if (user_tag_serial) {
text = text + "&user_tag_serial=" + user_tag_serial;
}
if (ser_tag_serial_64) {
text = text + "&ser_tag_serial_64=" + ser_tag_serial_64;
}
if (user_phonetic) {
text = text + "&user_phonetic=" + user_phonetic;
}
if (phone) {
text = text + "&phone=" + phone;
}
if (user_categoryid) {
text = text + "&user_categoryid=" + user_categoryid;
}
if (user_primemail) {
text = text + "&user_primemail=" + user_primemail;
}
if (user_workplace) {
text = text + "&user_workplace=" + user_workplace;
}
if (user_school) {
text = text + "&user_school=" + user_school;
}
if (user_school) {
text = text + "&reserve_date_from=" + reserve_date_from;
}
if (reserve_date_to) {
text = text + "&reserve_date_to=" + reserve_date_to;
}
if (contract_created_at_from) {
text =
text +
"&contract_created_at_from=" +
contract_created_at_from;
}
if (contract_created_at_to) {
text =
text +
"&contract_created_at_to=" +
contract_created_at_to;
}
if (contract_cancelday_from) {
text =
text +
"&contract_cancelday_from=" +
contract_cancelday_from;
}
if (contract_cancelday_to) {
text =
text +
"&contract_cancelday_to=" +
contract_cancelday_to;
}
if (contract_payment_day_from) {
text =
text +
"&contract_payment_day_from=" +
contract_payment_day_from;
}
if (contract_payment_day_to) {
text =
text +
"&contract_payment_day_to=" +
contract_payment_day_to;
}
if (enable_months) {
text = text + "&enable_months=" + enable_months;
}
if (update_flag) {
text = text + "&update_flag=" + update_flag;
}
if (contract_seal_issue) {
text = text + "&contract_seal_issue=" + contract_seal_issue;
}
if (m800_flag) {
text = text + "&m800_flag=" + m800_flag;
}
if (park_position) {
text = text + "&park_position=" + park_position;
}
if (park_id) {
text = text + "&park_id=" + park_id;
}
if (sort) {
text = text + "&sort=" + sort;
}
if (sort_type) {
text = text + "&sort_type=" + sort_type;
}
if (sort_order) {
text = text + "&sort_order=" + sort_order;
}
if (que_status) {
text = text + "&que_status=" + que_status;
}
if (usertype_subject1) {
text = text + "&usertype_subject1=" + usertype_subject1;
}
if (usertype_subject2) {
text = text + "&usertype_subject2=" + usertype_subject2;
}
if (usertype_subject3) {
text = text + "&usertype_subject3=" + usertype_subject3;
}
if (contract_id) {
text = text + "&contract_id=" + contract_id;
}
if (park_id) {
text = text + "&park_id=" + park_id;
}
if (ptype_id) {
text = text + "&ptype_id=" + ptype_id;
}
if (psection_id) {
text = text + "&psection_id=" + psection_id;
}
if (zone_id) {
text = text + "&zone_id=" + zone_id;
}
if (reserve_date_before) {
text = text + "&reserve_date_before=" + reserve_date_before;
}
if (contract_created_at_before) {
text =
text +
"&contract_created_at_before=" +
contract_created_at_before;
}
if (contract_cancelday_before) {
text =
text +
"&contract_cancelday_before=" +
contract_cancelday_before;
}
if (contract_payment_day_before) {
text =
text +
"&contract_payment_day_before=" +
contract_payment_day_before;
}
if (tag_qr_flag) {
text =
text +
"&tag_qr_flag=" +
tag_qr_flag;
}
$.confirm({
title: "確認",
content: "!CSVファイルを出力します。よろしいですか?",
buttons: {
ok: {
text: "はい",
btnClass: "btn-primary",
keys: ["enter"],
action: function action() {
window.location.href = _action + text;
},
},
いいえ: function _() {},
},
});
});
// for sorting
$(".table thead th.sorting").on("click", function (e) {
var sort = $(this).attr("sort");
var sort_type = "asc";
if ($(this).hasClass("sorting_asc")) {
sort_type = "desc";
}
$('input:hidden[name="sort"]').val(sort);
$('input:hidden[name="sort_type"]').val(sort_type);
$("form#list-form").submit();
});
$(".date").datepicker({
language: "ja",
format: "yyyy/mm/dd",
});
$("#select_user").on("change", function () {
var mobile = $("option:selected", this).attr("mobile"),
homePhone = $("option:selected", this).attr("homePhone");
$("#mobile").val(mobile);
$("#homephone").val(homePhone);
});
$("#select_user").trigger("change");
$(".register").on("click", function (e) {
e.preventDefault();
$.confirm({
title: "確認ダイアログ。",
content: "登録してよろしいですか?はい/いいえ",
buttons: {
ok: {
text: "はい",
btnClass: "btn-primary",
keys: ["enter"],
action: function action() {
$("form").submit();
},
},
いいえ: function _() {},
},
});
});
$(".quit_flg").on("ifChecked", function (e) {
var val = $(this).val();
if (val == 1) {
$("#manager_quitday").val(getDateNow());
} else {
$("#manager_quitday").val("");
}
});
function getDateNow() {
var d = new Date(),
month = d.getMonth() + 1,
day = d.getDate(),
output =
d.getFullYear() +
"-" +
(("" + month).length < 2 ? "0" : "") +
month +
"-" +
(("" + day).length < 2 ? "0" : "") +
day;
return output;
}
$(".filter_created").on("click", function (e) {
e.preventDefault();
var val = $(this).val();
$(".hd_filter_created").val(val);
$("#list-form").submit();
});
$(".filter_class").on("click", function (e) {
e.preventDefault();
var val = $(this).val();
$(".hd_filter_class").val(val);
$("#list-form").submit();
});
$(".filter_status").on("click", function (e) {
e.preventDefault();
var val = $(this).val();
$(".hd_filter_status").val(val);
$("#list-form").submit();
});
$(".status_2").on("click", function (e) {
e.preventDefault();
updateStatus(2);
});
$(".status_3").on("click", function (e) {
e.preventDefault();
updateStatus(3);
});
function updateStatus(status) {
$("#update_status").val(status);
$("#form_update").submit();
}
$(".select_type_date").on("ifChecked", function (e) {
var val = $(this).val();
if (val == 1) {
$(".search_date").attr("readonly", false);
$("#search_month").attr("disabled", true);
} else {
$(".search_date").attr("readonly", true);
$(".search_date").val("");
$("#search_month").attr("disabled", false);
}
});
$(".select_type_date[checked]").trigger("ifChecked");
$(".confirm_alert").on("click", function (e) {
e.preventDefault();
var val = $(this).val();
$("#save").val(val);
confirm(
"確認ダイアログ。",
"登録してよろしいですか?はい/いいえ",
function () {
$("form").submit();
}
);
});
$(".delete_picture").on("click", function (e) {
e.preventDefault();
var href = $(this).attr("href");
var mes =
"(!本人確認写真を削除します。よろしいですか? はい/いいえ)";
confirm("確認ダイアログ。", mes, function () {
$("#pictureTwo").hide();
$("#pictureOne").hide();
$("#btnRemovePicture").hide();
$("#isDeletPicture").val("1");
});
});
$(".update").on("click", function (e) {
e.preventDefault();
$("#isUpdate").val(1);
confirm(
"確認ダイアログ。",
"退会してよろしいですか?",
function () {
$("form").submit();
}
);
});
$(".submit_contractor").on("click", function (e) {
e.preventDefault();
var val = $(this).val(),
msg,
text = $(this).text();
$("#save").val(val);
$("#search").val(1);
msg = text + "してよろしいですか?";
confirm("確認ダイアログ。", msg, function () {
$("form").submit();
});
});
$(".tag_reissue").on("click", function (e) {
e.preventDefault();
$("#search").val(1);
confirm(
"確認ダイアログ。",
"タグを再発行してよろしいですか?",
function () {
$("form#reissue").submit();
}
);
});
$(".submit_refund").on("click", function (e) {
e.preventDefault();
var val = $(this).val(),
msg,
text = $(this).text();
$("#save").val(val);
msg = text + "として登録してよろしいですか?";
confirm("確認ダイアログ。", msg, function () {
$("form").submit();
});
});
$("#print").on("click", function (e) {
e.preventDefault();
var href = $(this).attr("href");
confirm(
"確認ダイアログ。",
"未発送のタグ発送用宛名を印刷してよろしいですか?",
function () {
window.location.href = href;
}
);
});
$("#search_park").on("change", function (e) {
e.preventDefault();
var val = $(this).val();
$("#list-form").submit();
});
function confirm(title, content, action) {
$.confirm({
title: title,
content: content,
buttons: {
ok: {
text: "はい",
btnClass: "btn-primary",
keys: ["enter"],
action: action,
},
いいえ: function _() {},
},
});
}
$("#forcus_tag_serial").on("click", function (e) {
e.preventDefault();
$('input[name="user_tag_serial"]').focus();
});
$("#forcus_tag_serial_64").on("click", function (e) {
e.preventDefault();
$('input[name="user_tag_serial_64"]').focus();
});
$(".isClear").on("click", function (e) {
e.preventDefault();
var val = $(this).val();
$("#isClear").val(val);
$("#list-form").submit();
});
//1: タグ発送済み , 3 :タグ未発送
$(".update_search").on("click", function (e) {
e.preventDefault();
var isCheck = true,
msg,
func,
status = $(this).val();
$("#status").val(status);
var searchIDs = $("input[name='pk[]']:checked")
.map(function () {
var que_status = $(this).attr("que_status"),
breakCheck = false;
if (status == 1) {
if (que_status != 1 && breakCheck == false) {
isCheck = false;
breakCheck = true;
}
} else {
if (que_status != 3 && breakCheck == false) {
isCheck = false;
breakCheck = true;
}
}
})
.get();
if (isCheck) {
if (status == 1) {
// msg = "スタータスをタグ発送済に変更してよろしいですか";
msg =
"!ステータスをタグ発送済みに変更してよろしいですか?";
} else {
// msg = "スタータスをタグ未発送に変更してよろしいですか";
msg =
"!ステータスをタグ未発送に変更してよろしいですか?";
}
func = function func() {
$("#form_update").submit();
};
confirm("確認ダイアログ。", msg, func);
} else {
if (status == 1) {
msg =
"タグ発送ステータスが発送済を含むためステータスを変更できません";
} else {
msg =
"タグ発送ステータスが未発送を含むためステータスを変更できません";
}
func = null;
$.confirm({
title: "確認ダイアログ。",
content: msg,
buttons: {
閉じる: function _() {},
},
});
}
});
$('input[name="report"]').on("ifChecked", function (e) {
var val = $(this).val();
if (val == 1) {
$(".report_years").show();
$(".report_months").hide();
$(".report_date").hide();
} else if (val == 2) {
$(".report_years").hide();
$(".report_months").show();
$(".report_date").hide();
} else if (val == 3) {
$(".report_years").hide();
$(".report_months").hide();
$(".report_date").show();
}
});
$('input[name="report"][checked]').trigger("ifChecked");
$("#check_repayment").on("ifChecked", function (e) {
$(".check_repayment").css("color", "red");
});
$("#check_repayment").on("ifUnchecked", function (e) {
$(".check_repayment").removeAttr("style");
});
$("#image1_filename").change(function () {
readURL(this, 1);
});
$("#image2_filename").change(function () {
readURL(this, 2);
});
function readURL(input, id) {
$("#urlEdit" + id).show();
$("#pre_image" + id).show();
$("#urlNew" + id).hide();
$("#alert" + id).hide();
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$("#pre_image" + id).attr("src", e.target.result);
var d = new Date(),
ts = Date.parse(d),
filename = $(input)[0].files[0]["name"],
name = ts + filename,
origin = window.location.origin;
$("#name_image" + id).val(name);
$("#urlEdit" + id).text(
origin + "/storage/images/" + name
);
};
reader.readAsDataURL(input.files[0]);
}
}
$("#deleteImage1").on("click", function (e) {
e.preventDefault();
deleteImage(1);
});
$("#deleteImage2").on("click", function (e) {
e.preventDefault();
deleteImage(2);
});
function deleteImage(id) {
$("#urlEdit" + id).hide();
$("#pre_image" + id).hide();
$("#urlNew" + id).show();
$("#alert" + id).show();
$("#name_image" + id).val("");
}
(function () {
var onload = window.onload;
$.datetimepicker.setLocale("ja");
$(".datetimepicker").datetimepicker();
window.onload = function () {
if (typeof onload == "function") {
onload.apply(this, arguments);
}
var fields = [];
var inputs = document.getElementsByTagName("input");
var textareas = document.getElementsByTagName("textarea");
for (var i = 0; i < inputs.length; i++) {
fields.push(inputs[i]);
}
for (var i = 0; i < textareas.length; i++) {
fields.push(textareas[i]);
}
for (var i = 0; i < fields.length; i++) {
var field = fields[i];
if (
typeof field.onpaste != "function" &&
!!field.getAttribute("onpaste")
) {
field.onpaste = eval(
"(function () { " +
field.getAttribute("onpaste") +
" })"
);
}
if (typeof field.onpaste == "function") {
var oninput = field.oninput;
field.oninput = function () {
if (typeof oninput == "function") {
oninput.apply(this, arguments);
}
if (typeof this.previousValue == "undefined") {
this.previousValue = this.value;
}
var pasted =
Math.abs(
this.previousValue.length -
this.value.length
) > 1 && this.value != "";
if (
pasted &&
!this.onpaste.apply(this, arguments)
) {
this.value = this.previousValue;
}
this.previousValue = this.value;
};
if (field.addEventListener) {
field.addEventListener(
"input",
field.oninput,
false
);
} else if (field.attachEvent) {
field.attachEvent("oninput", field.oninput);
}
}
}
};
})();
var checkPriceTables = function checkPriceTables() {
$("table#priceATable tbody tr").each(function () {
var _tr = $(this);
var key = _tr.attr("data-key");
_tr.find(".price_month").each(function () {
var priceBTr = $(
'table#priceBTable tbody tr[data-key="' + key + '"]'
);
if (priceBTr.length === 0) {
_tr.find(".price_month").css({
background: "yellow",
});
} else {
_tr.find(".price_month").each(function () {
var month = $(this).attr("data-month");
var psectionId =
$(this).attr("data-psection-id");
var priceValue = $(this).find(".price").val();
var priceBValue = priceBTr
.find(
'.price_month[data-psection-id="' +
psectionId +
'"][data-month="' +
month +
'"] .price'
)
.val();
if (priceBValue !== priceValue) {
$(this).css({ background: "yellow" });
priceBTr
.find(
'.price_month[data-psection-id="' +
psectionId +
'"][data-month="' +
month +
'"]'
)
.css({ background: "yellow" });
}
// console.log('compare: (', month, ',', priceValue, ',', priceBValue, ')');
});
}
});
});
$("table#priceBTable tbody tr").each(function () {
var _tr = $(this);
var key = _tr.attr("data-key");
_tr.find(".price_month").each(function () {
var priceATr = $(
'table#priceATable tbody tr[data-key="' + key + '"]'
);
if (priceATr.length === 0) {
_tr.find(".price_month").css({
background: "yellow",
});
}
});
});
};
$(document).ready(function () {
checkPriceTables();
$(
"table#priceATable input.price, table#priceBTable input.price"
).on("change", function () {
checkPriceTables();
});
$("#priceTableSaveButton").on("click", function (e) {
e.preventDefault();
var _this = $(this);
$.confirm({
title: "確認ダイアログ。",
content: "登録してよろしいですか?はい/いいえ",
buttons: {
ok: {
text: "はい",
btnClass: "btn-primary",
keys: ["enter"],
action: function action() {
$("#priceTableForm").submit();
},
},
いいえ: function _() {},
},
});
});
$("#changPark").on("change", function () {
var val = $("#changPark option:selected").val();
var dir = $("#url_park").val();
$.ajax({
url: dir,
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr(
"content"
),
},
type: "POST",
data: {
id: val,
},
success: function success(result) {
$("#zone_id option").remove();
$("#zone_id").append("");
if (result.length > 0) {
for (i = 0; i < result.length; i++) {
$("#zone_id").append(
'"
);
}
}
},
});
var val = $(this).val(),
url = $("#getListMonth").val(),
linkGetListPrice = $("#linkGetListPrice").val();
$.ajax({
url: url,
type: "GET",
contentType: "application/json; charset=utf-8",
dataType: "json",
data: {
id: val,
},
success: function success(result) {
var html = '',
select_id =
$("#enable_months").attr("select_id"),
select = "";
$.each(result, function (i, index) {
var key = i.split("_"),
month = key[2];
if (select_id == month) {
select = "selected";
}
if (index == 1) {
html +=
'";
}
select = "";
});
$("#enable_months").html(html);
},
});
$.ajax({
url: linkGetListPrice,
type: "GET",
contentType: "application/json; charset=utf-8",
dataType: "json",
data: {
id: val,
},
success: function success(result) {
var html = '';
var select_id = $("#setList").attr("select_id"),
select = "";
$.each(result, function (k, v) {
if (select_id == k) {
select = "selected";
}
html +=
'";
select = "";
});
$("#setList").html(html);
},
});
});
// $('#changPark').trigger('change');
if ($(".floatTheadTable").length) {
$(".floatTheadTable").floatThead({
top: -8,
position: "absolute",
});
}
});
/***/
},
/* 2 */
/***/ function (module, exports) {
/*!
* jquery-confirm v3.3.2 (http://craftpip.github.io/jquery-confirm/)
* Author: Boniface Pereira
* Website: www.craftpip.com
* Contact: hey@craftpip.com
*
* Copyright 2013-2017 jquery-confirm
* Licensed under MIT (https://github.com/craftpip/jquery-confirm/blob/master/LICENSE)
*/
if (typeof jQuery === "undefined") {
throw new Error("jquery-confirm requires jQuery");
}
var jconfirm, Jconfirm;
(function ($, window) {
"use strict";
$.fn.confirm = function (options, option2) {
if (typeof options === "undefined") options = {};
if (typeof options === "string") {
options = {
content: options,
title: option2 ? option2 : false,
};
}
/*
* Alias of $.confirm to emulate native confirm()
*/
$(this).each(function () {
var $this = $(this);
if ($this.attr("jc-attached")) {
console.warn(
"jConfirm has already been attached to this element ",
$this[0]
);
return;
}
$this.on("click", function (e) {
e.preventDefault();
var jcOption = $.extend({}, options);
if ($this.attr("data-title"))
jcOption["title"] = $this.attr("data-title");
if ($this.attr("data-content"))
jcOption["content"] =
$this.attr("data-content");
if (typeof jcOption["buttons"] == "undefined")
jcOption["buttons"] = {};
jcOption["$target"] = $this;
if (
$this.attr("href") &&
Object.keys(jcOption["buttons"]).length == 0
) {
var buttons = $.extend(
true,
{},
jconfirm.pluginDefaults.defaultButtons,
(jconfirm.defaults || {}).defaultButtons ||
{}
);
var firstBtn = Object.keys(buttons)[0];
jcOption["buttons"] = buttons;
jcOption.buttons[firstBtn].action =
function () {
location.href = $this.attr("href");
};
}
jcOption["closeIcon"] = false;
var instance = $.confirm(jcOption);
});
$this.attr("jc-attached", true);
});
return $(this);
};
$.confirm = function (options, option2) {
if (typeof options === "undefined") options = {};
if (typeof options === "string") {
options = {
content: options,
title: option2 ? option2 : false,
};
}
var putDefaultButtons = !(options["buttons"] == false);
if (typeof options["buttons"] != "object")
options["buttons"] = {};
if (
Object.keys(options["buttons"]).length == 0 &&
putDefaultButtons
) {
var buttons = $.extend(
true,
{},
jconfirm.pluginDefaults.defaultButtons,
(jconfirm.defaults || {}).defaultButtons || {}
);
options["buttons"] = buttons;
}
/*
* Alias of jconfirm
*/
return jconfirm(options);
};
$.alert = function (options, option2) {
if (typeof options === "undefined") options = {};
if (typeof options === "string") {
options = {
content: options,
title: option2 ? option2 : false,
};
}
var putDefaultButtons = !(options["buttons"] == false);
if (typeof options.buttons != "object")
options.buttons = {};
if (
Object.keys(options["buttons"]).length == 0 &&
putDefaultButtons
) {
var buttons = $.extend(
true,
{},
jconfirm.pluginDefaults.defaultButtons,
(jconfirm.defaults || {}).defaultButtons || {}
);
var firstBtn = Object.keys(buttons)[0];
options["buttons"][firstBtn] = buttons[firstBtn];
}
/*
* Alias of jconfirm
*/
return jconfirm(options);
};
$.dialog = function (options, option2) {
if (typeof options === "undefined") options = {};
if (typeof options === "string") {
options = {
content: options,
title: option2 ? option2 : false,
closeIcon: function () {
// Just close the modal
},
};
}
options["buttons"] = {}; // purge buttons
if (typeof options["closeIcon"] == "undefined") {
// Dialog must have a closeIcon.
options["closeIcon"] = function () {};
}
/*
* Alias of jconfirm
*/
options.confirmKeys = [13];
return jconfirm(options);
};
jconfirm = function (options) {
if (typeof options === "undefined") options = {};
/*
* initial function for calling.
*/
var pluginOptions = $.extend(
true,
{},
jconfirm.pluginDefaults
);
if (jconfirm.defaults) {
pluginOptions = $.extend(
true,
pluginOptions,
jconfirm.defaults
);
}
/*
* merge options with plugin defaults.
*/
pluginOptions = $.extend(true, {}, pluginOptions, options);
var instance = new Jconfirm(pluginOptions);
jconfirm.instances.push(instance);
return instance;
};
Jconfirm = function (options) {
/*
* constructor function Jconfirm,
* options = user options.
*/
$.extend(this, options);
this._init();
};
Jconfirm.prototype = {
_init: function () {
var that = this;
if (!jconfirm.instances.length)
jconfirm.lastFocused = $("body").find(":focus");
this._id = Math.round(Math.random() * 99999);
/**
* contentParsed maintains the contents for $content, before it is put in DOM
*/
this.contentParsed = $(document.createElement("div"));
if (!this.lazyOpen) {
setTimeout(function () {
that.open();
}, 0);
}
},
_buildHTML: function () {
var that = this;
// prefix the animation string and store in animationParsed
this._parseAnimation(this.animation, "o");
this._parseAnimation(this.closeAnimation, "c");
this._parseBgDismissAnimation(
this.backgroundDismissAnimation
);
this._parseColumnClass(this.columnClass);
this._parseTheme(this.theme);
this._parseType(this.type);
/*
* Append html.
*/
var template = $(this.template);
template
.find(".jconfirm-box")
.addClass(this.animationParsed)
.addClass(this.backgroundDismissAnimationParsed)
.addClass(this.typeParsed);
if (this.typeAnimated)
template
.find(".jconfirm-box")
.addClass("jconfirm-type-animated");
if (this.useBootstrap) {
template
.find(".jc-bs3-row")
.addClass(this.bootstrapClasses.row);
template
.find(".jc-bs3-row")
.addClass(
"justify-content-md-center justify-content-sm-center justify-content-xs-center justify-content-lg-center"
);
template
.find(".jconfirm-box-container")
.addClass(this.columnClassParsed);
if (this.containerFluid)
template
.find(".jc-bs3-container")
.addClass(
this.bootstrapClasses.containerFluid
);
else
template
.find(".jc-bs3-container")
.addClass(this.bootstrapClasses.container);
} else {
template
.find(".jconfirm-box")
.css("width", this.boxWidth);
}
if (this.titleClass)
template
.find(".jconfirm-title-c")
.addClass(this.titleClass);
template.addClass(this.themeParsed);
var ariaLabel = "jconfirm-box" + this._id;
template
.find(".jconfirm-box")
.attr("aria-labelledby", ariaLabel)
.attr("tabindex", -1);
template
.find(".jconfirm-content")
.attr("id", ariaLabel);
if (this.bgOpacity !== null)
template
.find(".jconfirm-bg")
.css("opacity", this.bgOpacity);
if (this.rtl) template.addClass("jconfirm-rtl");
this.$el = template.appendTo(this.container);
this.$jconfirmBoxContainer = this.$el.find(
".jconfirm-box-container"
);
this.$jconfirmBox = this.$body =
this.$el.find(".jconfirm-box");
this.$jconfirmBg = this.$el.find(".jconfirm-bg");
this.$title = this.$el.find(".jconfirm-title");
this.$titleContainer =
this.$el.find(".jconfirm-title-c");
this.$content = this.$el.find("div.jconfirm-content");
this.$contentPane = this.$el.find(
".jconfirm-content-pane"
);
this.$icon = this.$el.find(".jconfirm-icon-c");
this.$closeIcon = this.$el.find(".jconfirm-closeIcon");
this.$holder = this.$el.find(".jconfirm-holder");
// this.$content.css(this._getCSS(this.animationSpeed, this.animationBounce));
this.$btnc = this.$el.find(".jconfirm-buttons");
this.$scrollPane = this.$el.find(
".jconfirm-scrollpane"
);
that.setStartingPoint();
// for loading content via URL
this._contentReady = $.Deferred();
this._modalReady = $.Deferred();
this.$holder.css({
"padding-top": this.offsetTop,
"padding-bottom": this.offsetBottom,
});
this.setTitle();
this.setIcon();
this._setButtons();
this._parseContent();
this.initDraggable();
if (this.isAjax) this.showLoading(false);
$.when(this._contentReady, this._modalReady).then(
function () {
if (that.isAjaxLoading)
setTimeout(function () {
that.isAjaxLoading = false;
that.setContent();
that.setTitle();
that.setIcon();
setTimeout(function () {
that.hideLoading(false);
that._updateContentMaxHeight();
}, 100);
if (
typeof that.onContentReady ===
"function"
)
that.onContentReady();
}, 50);
else {
// that.setContent();
that._updateContentMaxHeight();
that.setTitle();
that.setIcon();
if (
typeof that.onContentReady ===
"function"
)
that.onContentReady();
}
// start countdown after content has loaded.
if (that.autoClose) that._startCountDown();
}
);
this._watchContent();
if (this.animation === "none") {
this.animationSpeed = 1;
this.animationBounce = 1;
}
this.$body.css(
this._getCSS(
this.animationSpeed,
this.animationBounce
)
);
this.$contentPane.css(
this._getCSS(this.animationSpeed, 1)
);
this.$jconfirmBg.css(
this._getCSS(this.animationSpeed, 1)
);
this.$jconfirmBoxContainer.css(
this._getCSS(this.animationSpeed, 1)
);
},
_typePrefix: "jconfirm-type-",
typeParsed: "",
_parseType: function (type) {
this.typeParsed = this._typePrefix + type;
},
setType: function (type) {
var oldClass = this.typeParsed;
this._parseType(type);
this.$jconfirmBox
.removeClass(oldClass)
.addClass(this.typeParsed);
},
themeParsed: "",
_themePrefix: "jconfirm-",
setTheme: function (theme) {
var previous = this.theme;
this.theme = theme || this.theme;
this._parseTheme(this.theme);
if (previous) this.$el.removeClass(previous);
this.$el.addClass(this.themeParsed);
this.theme = theme;
},
_parseTheme: function (theme) {
var that = this;
theme = theme.split(",");
$.each(theme, function (k, a) {
if (a.indexOf(that._themePrefix) === -1)
theme[k] = that._themePrefix + $.trim(a);
});
this.themeParsed = theme.join(" ").toLowerCase();
},
backgroundDismissAnimationParsed: "",
_bgDismissPrefix: "jconfirm-hilight-",
_parseBgDismissAnimation: function (bgDismissAnimation) {
var animation = bgDismissAnimation.split(",");
var that = this;
$.each(animation, function (k, a) {
if (a.indexOf(that._bgDismissPrefix) === -1)
animation[k] =
that._bgDismissPrefix + $.trim(a);
});
this.backgroundDismissAnimationParsed = animation
.join(" ")
.toLowerCase();
},
animationParsed: "",
closeAnimationParsed: "",
_animationPrefix: "jconfirm-animation-",
setAnimation: function (animation) {
this.animation = animation || this.animation;
this._parseAnimation(this.animation, "o");
},
_parseAnimation: function (animation, which) {
which = which || "o"; // parse what animation and store where. open or close?
var animations = animation.split(",");
var that = this;
$.each(animations, function (k, a) {
if (a.indexOf(that._animationPrefix) === -1)
animations[k] =
that._animationPrefix + $.trim(a);
});
var a_string = animations.join(" ").toLowerCase();
if (which === "o") this.animationParsed = a_string;
else this.closeAnimationParsed = a_string;
return a_string;
},
setCloseAnimation: function (closeAnimation) {
this.closeAnimation =
closeAnimation || this.closeAnimation;
this._parseAnimation(this.closeAnimation, "c");
},
setAnimationSpeed: function (speed) {
this.animationSpeed = speed || this.animationSpeed;
// this.$body.css(this._getCSS(this.animationSpeed, this.animationBounce));
},
columnClassParsed: "",
setColumnClass: function (colClass) {
if (!this.useBootstrap) {
console.warn(
"cannot set columnClass, useBootstrap is set to false"
);
return;
}
this.columnClass = colClass || this.columnClass;
this._parseColumnClass(this.columnClass);
this.$jconfirmBoxContainer.addClass(
this.columnClassParsed
);
},
_updateContentMaxHeight: function () {
var height =
$(window).height() -
(this.$jconfirmBox.outerHeight() -
this.$contentPane.outerHeight()) -
(this.offsetTop + this.offsetBottom);
this.$contentPane.css({
"max-height": height + "px",
});
},
setBoxWidth: function (width) {
if (this.useBootstrap) {
console.warn(
"cannot set boxWidth, useBootstrap is set to true"
);
return;
}
this.boxWidth = width;
this.$jconfirmBox.css("width", width);
},
_parseColumnClass: function (colClass) {
colClass = colClass.toLowerCase();
var p;
switch (colClass) {
case "xl":
case "xlarge":
p = "col-md-12";
break;
case "l":
case "large":
p = "col-md-8 col-md-offset-2";
break;
case "m":
case "medium":
p = "col-md-6 col-md-offset-3";
break;
case "s":
case "small":
p = "col-md-4 col-md-offset-4";
break;
case "xs":
case "xsmall":
p = "col-md-2 col-md-offset-5";
break;
default:
p = colClass;
}
this.columnClassParsed = p;
},
initDraggable: function () {
var that = this;
var $t = this.$titleContainer;
this.resetDrag();
if (this.draggable) {
$t.on("mousedown", function (e) {
$t.addClass("jconfirm-hand");
that.mouseX = e.clientX;
that.mouseY = e.clientY;
that.isDrag = true;
});
$(window).on("mousemove." + this._id, function (e) {
if (that.isDrag) {
that.movingX =
e.clientX - that.mouseX + that.initialX;
that.movingY =
e.clientY - that.mouseY + that.initialY;
that.setDrag();
}
});
$(window).on("mouseup." + this._id, function () {
$t.removeClass("jconfirm-hand");
if (that.isDrag) {
that.isDrag = false;
that.initialX = that.movingX;
that.initialY = that.movingY;
}
});
}
},
resetDrag: function () {
this.isDrag = false;
this.initialX = 0;
this.initialY = 0;
this.movingX = 0;
this.movingY = 0;
this.mouseX = 0;
this.mouseY = 0;
this.$jconfirmBoxContainer.css(
"transform",
"translate(" + 0 + "px, " + 0 + "px)"
);
},
setDrag: function () {
if (!this.draggable) return;
this.alignMiddle = false;
var boxWidth = this.$jconfirmBox.outerWidth();
var boxHeight = this.$jconfirmBox.outerHeight();
var windowWidth = $(window).width();
var windowHeight = $(window).height();
var that = this;
var dragUpdate = 1;
if (
that.movingX % dragUpdate === 0 ||
that.movingY % dragUpdate === 0
) {
if (that.dragWindowBorder) {
var leftDistance =
windowWidth / 2 - boxWidth / 2;
var topDistance =
windowHeight / 2 - boxHeight / 2;
topDistance -= that.dragWindowGap;
leftDistance -= that.dragWindowGap;
if (leftDistance + that.movingX < 0) {
that.movingX = -leftDistance;
} else if (leftDistance - that.movingX < 0) {
that.movingX = leftDistance;
}
if (topDistance + that.movingY < 0) {
that.movingY = -topDistance;
} else if (topDistance - that.movingY < 0) {
that.movingY = topDistance;
}
}
that.$jconfirmBoxContainer.css(
"transform",
"translate(" +
that.movingX +
"px, " +
that.movingY +
"px)"
);
}
},
_scrollTop: function () {
if (typeof pageYOffset !== "undefined") {
//most browsers except IE before #9
return pageYOffset;
} else {
var B = document.body; //IE 'quirks'
var D = document.documentElement; //IE with doctype
D = D.clientHeight ? D : B;
return D.scrollTop;
}
},
_watchContent: function () {
var that = this;
if (this._timer) clearInterval(this._timer);
var prevContentHeight = 0;
this._timer = setInterval(function () {
if (that.smoothContent) {
var contentHeight =
that.$content.outerHeight() || 0;
if (contentHeight !== prevContentHeight) {
that.$contentPane
.css({
height: contentHeight,
})
.scrollTop(0);
prevContentHeight = contentHeight;
}
var wh = $(window).height();
var total =
that.offsetTop +
that.offsetBottom +
that.$jconfirmBox.height() -
that.$contentPane.height() +
that.$content.height();
if (total < wh) {
that.$contentPane.addClass("no-scroll");
} else {
that.$contentPane.removeClass("no-scroll");
}
}
}, this.watchInterval);
},
_overflowClass: "jconfirm-overflow",
_hilightAnimating: false,
highlight: function () {
this.hiLightModal();
},
hiLightModal: function () {
var that = this;
if (this._hilightAnimating) return;
that.$body.addClass("hilight");
var duration =
parseFloat(that.$body.css("animation-duration")) ||
2;
this._hilightAnimating = true;
setTimeout(function () {
that._hilightAnimating = false;
that.$body.removeClass("hilight");
}, duration * 1000);
},
_bindEvents: function () {
var that = this;
this.boxClicked = false;
this.$scrollPane.click(function (e) {
// Ignore propagated clicks
if (!that.boxClicked) {
// Background clicked
/*
If backgroundDismiss is a function and its return value is truthy
proceed to close the modal.
*/
var buttonName = false;
var shouldClose = false;
var str;
if (typeof that.backgroundDismiss == "function")
str = that.backgroundDismiss();
else str = that.backgroundDismiss;
if (
typeof str == "string" &&
typeof that.buttons[str] != "undefined"
) {
buttonName = str;
shouldClose = false;
} else if (
typeof str == "undefined" ||
!!str == true
) {
shouldClose = true;
} else {
shouldClose = false;
}
if (buttonName) {
var btnResponse =
that.buttons[buttonName].action.apply(
that
);
shouldClose =
typeof btnResponse == "undefined" ||
!!btnResponse;
}
if (shouldClose) that.close();
else that.hiLightModal();
}
that.boxClicked = false;
});
this.$jconfirmBox.click(function (e) {
that.boxClicked = true;
});
var isKeyDown = false;
$(window).on("jcKeyDown." + that._id, function (e) {
if (!isKeyDown) {
isKeyDown = true;
}
});
$(window).on("keyup." + that._id, function (e) {
if (isKeyDown) {
that.reactOnKey(e);
isKeyDown = false;
}
});
$(window).on("resize." + this._id, function () {
that._updateContentMaxHeight();
setTimeout(function () {
that.resetDrag();
}, 100);
});
},
_cubic_bezier: "0.36, 0.55, 0.19",
_getCSS: function (speed, bounce) {
return {
"-webkit-transition-duration": speed / 1000 + "s",
"transition-duration": speed / 1000 + "s",
"-webkit-transition-timing-function":
"cubic-bezier(" +
this._cubic_bezier +
", " +
bounce +
")",
"transition-timing-function":
"cubic-bezier(" +
this._cubic_bezier +
", " +
bounce +
")",
};
},
_setButtons: function () {
var that = this;
/*
* Settings up buttons
*/
var total_buttons = 0;
if (typeof this.buttons !== "object") this.buttons = {};
$.each(this.buttons, function (key, button) {
total_buttons += 1;
if (typeof button === "function") {
that.buttons[key] = button = {
action: button,
};
}
that.buttons[key].text = button.text || key;
that.buttons[key].btnClass =
button.btnClass || "btn-default";
that.buttons[key].action =
button.action || function () {};
that.buttons[key].keys = button.keys || [];
that.buttons[key].isHidden =
button.isHidden || false;
that.buttons[key].isDisabled =
button.isDisabled || false;
$.each(that.buttons[key].keys, function (i, a) {
that.buttons[key].keys[i] = a.toLowerCase();
});
var button_element = $(
''
)
.html(that.buttons[key].text)
.addClass(that.buttons[key].btnClass)
.prop("disabled", that.buttons[key].isDisabled)
.css(
"display",
that.buttons[key].isHidden ? "none" : ""
)
.click(function (e) {
e.preventDefault();
var res = that.buttons[key].action.apply(
that,
[that.buttons[key]]
);
that.onAction.apply(that, [
key,
that.buttons[key],
]);
that._stopCountDown();
if (typeof res === "undefined" || res)
that.close();
});
that.buttons[key].el = button_element;
that.buttons[key].setText = function (text) {
button_element.html(text);
};
that.buttons[key].addClass = function (className) {
button_element.addClass(className);
};
that.buttons[key].removeClass = function (
className
) {
button_element.removeClass(className);
};
that.buttons[key].disable = function () {
that.buttons[key].isDisabled = true;
button_element.prop("disabled", true);
};
that.buttons[key].enable = function () {
that.buttons[key].isDisabled = false;
button_element.prop("disabled", false);
};
that.buttons[key].show = function () {
that.buttons[key].isHidden = false;
button_element.css("display", "");
};
that.buttons[key].hide = function () {
that.buttons[key].isHidden = true;
button_element.css("display", "none");
};
/*
Buttons are prefixed with $_ or $$ for quick access
*/
that["$_" + key] = that["$$" + key] =
button_element;
that.$btnc.append(button_element);
});
if (total_buttons === 0) this.$btnc.hide();
if (this.closeIcon === null && total_buttons === 0) {
/*
in case when no buttons are present & closeIcon is null, closeIcon is set to true,
set closeIcon to true to explicitly tell to hide the close icon
*/
this.closeIcon = true;
}
if (this.closeIcon) {
if (this.closeIconClass) {
// user requires a custom class.
var closeHtml =
'';
this.$closeIcon.html(closeHtml);
}
this.$closeIcon.click(function (e) {
e.preventDefault();
var buttonName = false;
var shouldClose = false;
var str;
if (typeof that.closeIcon == "function") {
str = that.closeIcon();
} else {
str = that.closeIcon;
}
if (
typeof str == "string" &&
typeof that.buttons[str] != "undefined"
) {
buttonName = str;
shouldClose = false;
} else if (
typeof str == "undefined" ||
!!str == true
) {
shouldClose = true;
} else {
shouldClose = false;
}
if (buttonName) {
var btnResponse =
that.buttons[buttonName].action.apply(
that
);
shouldClose =
typeof btnResponse == "undefined" ||
!!btnResponse;
}
if (shouldClose) {
that.close();
}
});
this.$closeIcon.show();
} else {
this.$closeIcon.hide();
}
},
setTitle: function (string, force) {
force = force || false;
if (typeof string !== "undefined")
if (typeof string == "string") this.title = string;
else if (typeof string == "function") {
if (typeof string.promise == "function")
console.error(
"Promise was returned from title function, this is not supported."
);
var response = string();
if (typeof response == "string")
this.title = response;
else this.title = false;
} else this.title = false;
if (this.isAjaxLoading && !force) return;
this.$title.html(this.title || "");
this.updateTitleContainer();
},
setIcon: function (iconClass, force) {
force = force || false;
if (typeof iconClass !== "undefined")
if (typeof iconClass == "string")
this.icon = iconClass;
else if (typeof iconClass === "function") {
var response = iconClass();
if (typeof response == "string")
this.icon = response;
else this.icon = false;
} else this.icon = false;
if (this.isAjaxLoading && !force) return;
this.$icon.html(
this.icon ? '' : ""
);
this.updateTitleContainer();
},
updateTitleContainer: function () {
if (!this.title && !this.icon) {
this.$titleContainer.hide();
} else {
this.$titleContainer.show();
}
},
setContentPrepend: function (content, force) {
if (!content) return;
this.contentParsed.prepend(content);
},
setContentAppend: function (content) {
if (!content) return;
this.contentParsed.append(content);
},
setContent: function (content, force) {
force = !!force;
var that = this;
if (content)
this.contentParsed.html("").append(content);
if (this.isAjaxLoading && !force) return;
this.$content.html("");
this.$content.append(this.contentParsed);
setTimeout(function () {
that.$body
.find("input[autofocus]:visible:first")
.focus();
}, 100);
},
loadingSpinner: false,
showLoading: function (disableButtons) {
this.loadingSpinner = true;
this.$jconfirmBox.addClass("loading");
if (disableButtons)
this.$btnc.find("button").prop("disabled", true);
},
hideLoading: function (enableButtons) {
this.loadingSpinner = false;
this.$jconfirmBox.removeClass("loading");
if (enableButtons)
this.$btnc.find("button").prop("disabled", false);
},
ajaxResponse: false,
contentParsed: "",
isAjax: false,
isAjaxLoading: false,
_parseContent: function () {
var that = this;
var e = " ";
if (typeof this.content == "function") {
var res = this.content.apply(this);
if (typeof res == "string") {
this.content = res;
} else if (
typeof res == "object" &&
typeof res.always == "function"
) {
// this is ajax loading via promise
this.isAjax = true;
this.isAjaxLoading = true;
res.always(function (data, status, xhr) {
that.ajaxResponse = {
data: data,
status: status,
xhr: xhr,
};
that._contentReady.resolve(
data,
status,
xhr
);
if (typeof that.contentLoaded == "function")
that.contentLoaded(data, status, xhr);
});
this.content = e;
} else {
this.content = e;
}
}
if (
typeof this.content == "string" &&
this.content.substr(0, 4).toLowerCase() === "url:"
) {
this.isAjax = true;
this.isAjaxLoading = true;
var u = this.content.substring(
4,
this.content.length
);
$.get(u)
.done(function (html) {
that.contentParsed.html(html);
})
.always(function (data, status, xhr) {
that.ajaxResponse = {
data: data,
status: status,
xhr: xhr,
};
that._contentReady.resolve(
data,
status,
xhr
);
if (typeof that.contentLoaded == "function")
that.contentLoaded(data, status, xhr);
});
}
if (!this.content) this.content = e;
if (!this.isAjax) {
this.contentParsed.html(this.content);
this.setContent();
that._contentReady.resolve();
}
},
_stopCountDown: function () {
clearInterval(this.autoCloseInterval);
if (this.$cd) this.$cd.remove();
},
_startCountDown: function () {
var that = this;
var opt = this.autoClose.split("|");
if (opt.length !== 2) {
console.error(
"Invalid option for autoClose. example 'close|10000'"
);
return false;
}
var button_key = opt[0];
var time = parseInt(opt[1]);
if (typeof this.buttons[button_key] === "undefined") {
console.error(
"Invalid button key '" +
button_key +
"' for autoClose"
);
return false;
}
var seconds = Math.ceil(time / 1000);
this.$cd = $(
' (' + seconds + ")"
).appendTo(this["$_" + button_key]);
this.autoCloseInterval = setInterval(function () {
that.$cd.html(" (" + (seconds -= 1) + ") ");
if (seconds <= 0) {
that["$$" + button_key].trigger("click");
that._stopCountDown();
}
}, 1000);
},
_getKey: function (key) {
// very necessary keys.
switch (key) {
case 192:
return "tilde";
case 13:
return "enter";
case 16:
return "shift";
case 9:
return "tab";
case 20:
return "capslock";
case 17:
return "ctrl";
case 91:
return "win";
case 18:
return "alt";
case 27:
return "esc";
case 32:
return "space";
}
// only trust alphabets with this.
var initial = String.fromCharCode(key);
if (/^[A-z0-9]+$/.test(initial))
return initial.toLowerCase();
else return false;
},
reactOnKey: function (e) {
var that = this;
/*
Prevent keyup event if the dialog is not last!
*/
var a = $(".jconfirm");
if (a.eq(a.length - 1)[0] !== this.$el[0]) return false;
var key = e.which;
/*
Do not react if Enter or Space is pressed on input elements
*/
if (
this.$content.find(":input").is(":focus") &&
/13|32/.test(key)
)
return false;
var keyChar = this._getKey(key);
// If esc is pressed
if (keyChar === "esc" && this.escapeKey) {
if (this.escapeKey === true) {
this.$scrollPane.trigger("click");
} else if (
typeof this.escapeKey === "string" ||
typeof this.escapeKey === "function"
) {
var buttonKey;
if (typeof this.escapeKey === "function") {
buttonKey = this.escapeKey();
} else {
buttonKey = this.escapeKey;
}
if (buttonKey)
if (
typeof this.buttons[buttonKey] ===
"undefined"
) {
console.warn(
"Invalid escapeKey, no buttons found with key " +
buttonKey
);
} else {
this["$_" + buttonKey].trigger("click");
}
}
}
// check if any button is listening to this key.
$.each(this.buttons, function (key, button) {
if (button.keys.indexOf(keyChar) != -1) {
that["$_" + key].trigger("click");
}
});
},
setDialogCenter: function () {
console.info(
"setDialogCenter is deprecated, dialogs are centered with CSS3 tables"
);
},
_unwatchContent: function () {
clearInterval(this._timer);
},
close: function (onClosePayload) {
var that = this;
if (typeof this.onClose === "function")
this.onClose(onClosePayload);
this._unwatchContent();
/*
unbind the window resize & keyup event.
*/
$(window).unbind("resize." + this._id);
$(window).unbind("keyup." + this._id);
$(window).unbind("jcKeyDown." + this._id);
if (this.draggable) {
$(window).unbind("mousemove." + this._id);
$(window).unbind("mouseup." + this._id);
this.$titleContainer.unbind("mousedown");
}
that.$el.removeClass(that.loadedClass);
$("body").removeClass("jconfirm-no-scroll-" + that._id);
that.$jconfirmBoxContainer.removeClass(
"jconfirm-no-transition"
);
setTimeout(function () {
that.$body.addClass(that.closeAnimationParsed);
that.$jconfirmBg.addClass("jconfirm-bg-h");
var closeTimer =
that.closeAnimation === "none"
? 1
: that.animationSpeed;
setTimeout(function () {
that.$el.remove();
var l = jconfirm.instances;
var i = jconfirm.instances.length - 1;
for (i; i >= 0; i--) {
if (
jconfirm.instances[i]._id === that._id
) {
jconfirm.instances.splice(i, 1);
}
}
// Focusing a element, scrolls automatically to that element.
// no instances should be open, lastFocused should be true, the lastFocused element must exists in DOM
if (!jconfirm.instances.length) {
if (
that.scrollToPreviousElement &&
jconfirm.lastFocused &&
jconfirm.lastFocused.length &&
$.contains(
document,
jconfirm.lastFocused[0]
)
) {
var $lf = jconfirm.lastFocused;
if (
that.scrollToPreviousElementAnimate
) {
var st = $(window).scrollTop();
var ot =
jconfirm.lastFocused.offset()
.top;
var wh = $(window).height();
if (!(ot > st && ot < st + wh)) {
var scrollTo =
ot - Math.round(wh / 3);
$("html, body").animate(
{
scrollTop: scrollTo,
},
that.animationSpeed,
"swing",
function () {
// gracefully scroll and then focus.
$lf.focus();
}
);
} else {
// the element to be focused is already in view.
$lf.focus();
}
} else {
$lf.focus();
}
jconfirm.lastFocused = false;
}
}
if (typeof that.onDestroy === "function")
that.onDestroy();
}, closeTimer * 0.4);
}, 50);
return true;
},
open: function () {
if (this.isOpen()) return false;
// var that = this;
this._buildHTML();
this._bindEvents();
this._open();
return true;
},
setStartingPoint: function () {
var el = false;
if (
this.animateFromElement !== true &&
this.animateFromElement
) {
el = this.animateFromElement;
jconfirm.lastClicked = false;
} else if (
jconfirm.lastClicked &&
this.animateFromElement === true
) {
el = jconfirm.lastClicked;
jconfirm.lastClicked = false;
} else {
return false;
}
if (!el) return false;
var offset = el.offset();
var iTop = el.outerHeight() / 2;
var iLeft = el.outerWidth() / 2;
// placing position of jconfirm modal in center of clicked element
iTop -= this.$jconfirmBox.outerHeight() / 2;
iLeft -= this.$jconfirmBox.outerWidth() / 2;
// absolute position on screen
var sourceTop = offset.top + iTop;
sourceTop = sourceTop - this._scrollTop();
var sourceLeft = offset.left + iLeft;
// window halved
var wh = $(window).height() / 2;
var ww = $(window).width() / 2;
var targetH = wh - this.$jconfirmBox.outerHeight() / 2;
var targetW = ww - this.$jconfirmBox.outerWidth() / 2;
sourceTop -= targetH;
sourceLeft -= targetW;
// Check if the element is inside the viewable window.
if (
Math.abs(sourceTop) > wh ||
Math.abs(sourceLeft) > ww
)
return false;
this.$jconfirmBoxContainer.css(
"transform",
"translate(" +
sourceLeft +
"px, " +
sourceTop +
"px)"
);
},
_open: function () {
var that = this;
if (typeof that.onOpenBefore === "function")
that.onOpenBefore();
this.$body.removeClass(this.animationParsed);
this.$jconfirmBg.removeClass("jconfirm-bg-h");
this.$body.focus();
that.$jconfirmBoxContainer.css(
"transform",
"translate(" + 0 + "px, " + 0 + "px)"
);
setTimeout(function () {
that.$body.css(
that._getCSS(that.animationSpeed, 1)
);
that.$body.css({
"transition-property":
that.$body.css("transition-property") +
", margin",
});
that.$jconfirmBoxContainer.addClass(
"jconfirm-no-transition"
);
that._modalReady.resolve();
if (typeof that.onOpen === "function")
that.onOpen();
that.$el.addClass(that.loadedClass);
}, this.animationSpeed);
},
loadedClass: "jconfirm-open",
isClosed: function () {
return !this.$el || this.$el.css("display") === "";
},
isOpen: function () {
return !this.isClosed();
},
toggle: function () {
if (!this.isOpen()) this.open();
else this.close();
},
};
jconfirm.instances = [];
jconfirm.lastFocused = false;
jconfirm.pluginDefaults = {
template:
"" +
'",
title: "Hello",
titleClass: "",
type: "default",
typeAnimated: true,
draggable: true,
dragWindowGap: 15,
dragWindowBorder: true,
animateFromElement: true,
/**
* @deprecated
*/
alignMiddle: true,
smoothContent: true,
content: "Are you sure to continue?",
buttons: {},
defaultButtons: {
ok: {
action: function () {},
},
close: {
action: function () {},
},
},
contentLoaded: function () {},
icon: "",
lazyOpen: false,
bgOpacity: null,
theme: "light",
animation: "scale",
closeAnimation: "scale",
animationSpeed: 400,
animationBounce: 1,
escapeKey: true,
rtl: false,
container: "body",
containerFluid: false,
backgroundDismiss: false,
backgroundDismissAnimation: "shake",
autoClose: false,
closeIcon: null,
closeIconClass: false,
watchInterval: 100,
columnClass:
"col-md-4 col-md-offset-4 col-sm-6 col-sm-offset-3 col-xs-10 col-xs-offset-1",
boxWidth: "50%",
scrollToPreviousElement: true,
scrollToPreviousElementAnimate: true,
useBootstrap: true,
offsetTop: 40,
offsetBottom: 40,
bootstrapClasses: {
container: "container",
containerFluid: "container-fluid",
row: "row",
},
onContentReady: function () {},
onOpenBefore: function () {},
onOpen: function () {},
onClose: function () {},
onDestroy: function () {},
onAction: function () {},
};
/**
* This refers to the issue #241 and #246
*
* Problem:
* Button A is clicked (keydown) using the Keyboard ENTER key
* A opens the jconfirm modal B,
* B has registered ENTER key for one of its button C
* A is released (keyup), B gets the keyup event and triggers C.
*
* Solution:
* Register a global keydown event, that tells jconfirm if the keydown originated inside jconfirm
*/
var keyDown = false;
$(window).on("keydown", function (e) {
if (!keyDown) {
var $target = $(e.target);
var pass = false;
if ($target.closest(".jconfirm-box").length)
pass = true;
if (pass) $(window).trigger("jcKeyDown");
keyDown = true;
}
});
$(window).on("keyup", function () {
keyDown = false;
});
jconfirm.lastClicked = false;
$(document).on("mousedown", "button, a", function () {
jconfirm.lastClicked = $(this);
});
})(jQuery, window);
/***/
},
/* 3 */
/***/ function (module, exports) {
// removed by extract-text-webpack-plugin
/***/
},
/******/
]
);