ibms-dome/Backend/Views/UserInfo/Index.cshtml

971 lines
38 KiB
Plaintext
Raw Normal View History

2022-10-14 16:08:54 +08:00

@{
ViewData["MainNum"] = "6";
ViewData["SubNum"] = "1";
ViewData["Title"] = "帳號管理";
}
<ol class="breadcrumb page-breadcrumb">
<li class="breadcrumb-item"><a href="javascript:void(0);">系統管理</a></li>
<li class="breadcrumb-item active">帳號管理</li>
<li class="position-absolute pos-top pos-right d-none d-sm-block"><span class="js-get-date"></span></li>
</ol>
<div class="row">
<div class="col-xl-12">
<div id="panel-5" class="panel">
<div class="panel-container show">
<div class="panel-content">
<ul class="nav nav-tabs" id="tabs" role="tablist">
<li class="nav-item"><a class="nav-link active" data-toggle="tab" href="#tab-user-manager" role="tab"><i class="fal fa-home text-success"></i> <span class="hidden-sm-down ml-1">帳號管理</span></a></li>
<li class="nav-item"><a class="nav-link" data-toggle="tab" href="#tab-role-manager" role="tab"><i class="fal fa-user text-primary"></i> <span class="hidden-sm-down ml-1">角色管理</span></a></li>
<li class="nav-item"><a class="nav-link" data-toggle="tab" href="#tab-role-auth" role="tab"><i class="fal fa-cog text-danger"></i> <span class="hidden-sm-down ml-1">角色權限</span></a></li>
</ul>
<div class="tab-content p-3">
<div class="tab-pane fade show active" id="tab-user-manager" role="tabpanel" aria-labelledby="tab-user-manager">
@Html.Partial("_UserManager")
</div>
<div class="tab-pane fade" id="tab-role-manager" role="tabpanel" aria-labelledby="tab-role-manager">
@Html.Partial("_RoleManager")
</div>
<div class="tab-pane fade" id="tab-role-auth" role="tabpanel" aria-labelledby="tab-role-auth">
@Html.Partial("_RoleAuth")
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@section Scripts {
<script>
var userManagerTable;
var selected_id = "0";
$(function () {
//#region 切換頁簽判斷被選中的tab
$('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
selected_tab = $(e.target).attr("href")
switch (selected_tab) {
case "#tab-user-manager":
userManagerTable.ajax.reload();
break;
case "#tab-role-manager":
roleManagerTable.ajax.reload();
break;
case "#tab-role-auth":
var url = "/UserInfo/RoleManagerList";
$.post(url, { post: 1 }, function (rel) {
if (rel.code != "0000") {
toast_error(rel.msg);
return;
}
if (rel.data.length > 0) {
$('#select_roleId_roleAuth_tab').empty();
$.each(rel.data, function (index, val) {
$("#select_roleId_roleAuth_tab").append($("<option />").val(val.role_guid).text(val.full_name));
});
//預設查詢第一個
$("#select_roleId_roleAuth_tab").val($("#select_roleId_roleAuth_tab option:first").val());
roleAuthTable.ajax.reload();
} else {
$("#select_roleId_roleAuth_tab").empty();
$("#select_roleId_roleAuth_tab").append('<option value="0" disabled>請先新增角色</option>');
$("#select_roleId_roleAuth_tab").val($("#user_role_modal option:first").val());
}
}, 'json');
break;
}
});
//#endregion
//#region 人員基本資料 DataTable
userManagerTable = $("#user_table").DataTable({
"columns": [
{
"data": null,
"render": function (data, type, row, meta) {
return meta.row + 1;
}
},
{
"data": "full_name"
},
{
"data": "account"
},
{
"data": "role_full_name"
},
{
"data": "email"
},
{
"data": "phone"
},
{
"data": "created_at"
},
{
"data": "userinfo_guid",
"render": function (data, type, row, meta) {
if (data == "0") {
return "";
} else {
if (data != '@ViewBag.myUserInfo.Userinfo_guid') {
return '<button class="btn btn-primary edit-btn">修改</button> <button class="btn btn-danger del-btn">刪除</button>';
} else {
return '<button class="btn btn-primary edit-btn">修改</button>';
}
}
}
//"defaultContent": '<button class="btn btn-primary edit-btn">修改</button> <button class="btn btn-danger del-btn">刪除</button>'
}
],
//"order": [[2, "desc"]],
'createdRow': function (row, data, dataIndex) {
$(row).attr('data-guid', data.userinfo_guid);
},
"ajax": {
"url": "/UserInfo/UserManagerList",
"type": "POST",
"dataSrc": function (rel) {
if (rel.code == "9999") {
toast_error(rel.msg);
return;
}
data = rel.data;
if (data == null || data.length == 0) {
this.data = [];
}
if (@ViewBag.myUserInfo.Layer == 1) {
$.each(this.data, function (index, val) {
if (val.layer == 0) {
val.userinfo_guid = "0"
}
});
}
console.log(this.data);
return data;
}
}
});
//#endregion
});
//#region 新增使用者
function AddUser() {
selected_id = "0";
$("#user-modal .modal-title").html("人員基本資料 - 新增");
$("#user-form").trigger("reset");
$("#user_account_modal").prop("disabled", false);
$(".user_account_same_email_div").show();
$("#user_account_same_email").prop("disabled", false);
$(".user-password-div").show();
GetRoleDropDownList('', 1);
$("#user-modal").modal();
}
//#endregion
//#region 編輯使用者
$('#user_table').on("click", "button.edit-btn", function () {
$("#user-modal .modal-title").html("人員基本資料 - 編輯");
selected_id = $(this).parents('tr').attr('data-guid');
//取得單一使用者管理員
var url = "/UserInfo/GetOneUser/";
var send_data = {
guid: selected_id
}
$.post(url, send_data, function (rel) {
if (rel.code == "9999") {
toast_error(rel.msg);
return;
}
else if (rel.code == "9998") {
toast_error(rel.msg);
return;
}
$("#user_name_modal").val(rel.data.full_name);
$("#user_email_modal").val(rel.data.email);
$("#user_account_modal").val(rel.data.account);
$("#user_account_modal").prop("disabled", true);
$(".user_account_same_email_div").hide();
$("#user_account_same_email").prop("disabled", true);
$(".system_admin_password_form_row").hide();
$("#user_phone_modal").val(rel.data.phone);
GetRoleDropDownList(rel.data.role_guid, 1);
$(".user-password-div").hide();
$("#user-modal").modal();
}, 'json');
});
//#endregion
//#region 取得角色下拉選單
function GetRoleDropDownList(selectedVal, type) {
var url = "/UserInfo/RoleManagerList";
$.post(url, { post : 0 }, function (rel) {
if (rel.code != "0000") {
toast_error(rel.msg);
return;
}
if (type == 1) {
if (rel.data.length > 0) {
$('#user_role_modal').empty();
$.each(rel.data, function (index, val) {
if (@ViewBag.myUserInfo.Layer == 1) {
if (val.layer == 0) {
$("#user_role_modal").append($("<option disabled style='background: #ccc;'/>").val(val.role_guid).text(val.full_name));
} else {
$("#user_role_modal").append($("<option />").val(val.role_guid).text(val.full_name));
}
} else {
$("#user_role_modal").append($("<option />").val(val.role_guid).text(val.full_name));
}
});
if (selectedVal != "") {
$("#user_role_modal").val(selectedVal);
}
else {
//預設查詢第一個
$("#user_role_modal").val($("#user_role_modal option:first").val()).trigger('change');
}
} else {
$("#user_role_modal").empty();
$("#user_role_modal").append('<option value="0" disabled>請先新增角色</option>');
$("#user_role_modal").val($("#user_role_modal option:first").val()).trigger('change');
}
}
else {
if (rel.data.length > 0) {
$('#select_roleId_roleAuth_tab').empty();
$.each(rel.data, function (index, val) {
$("#select_roleId_roleAuth_tab").append($("<option />").val(val.role_guid).text(val.full_name));
});
if (selectedVal != "") {
$("#select_roleId_roleAuth_tab").val(selectedVal);
}
else {
//預設查詢第一個
$("#select_roleId_roleAuth_tab").val($("#select_roleId_roleAuth_tab option:first").val()).trigger('change');
}
} else {
$("#select_roleId_roleAuth_tab").empty();
$("#select_roleId_roleAuth_tab").append('<option value="0" disabled>請先新增角色</option>');
$("#select_roleId_roleAuth_tab").val($("#user_role_modal option:first").val()).trigger('change');
}
}
//toast_ok(rel.msg);
}, 'json');
}
//#endregion
//#region 帳號是否等同Email
$('#user_account_same_email').change(function () {
var email = $("#user_email_modal").val();
if (email == undefined || email == null || email == "") {
toast_warning("請先填寫email");
$(this).prop("checked", false);
return;
}
if (this.checked && selected_id == 0) {
//只提供新增時可透過email填入帳號欄位
$("#user_account_modal").val(email);
$("#user_account_modal").prop("disabled", true);
}
else {
$("#user_account_modal").prop("disabled", false);
}
});
//#endregion
//#region 使用者表單驗證
$("#user-form").validate({
rules: {
user_name_modal: {
required: true,
},
user_email_modal: {
required: true,
email: true,
},
user_account_modal: {
required: true,
}
},
});
//#endregion
//#region 儲存使用者
function SaveUser() {
if ($("#user-form").valid()) {
$("#save-user-btn").html('<span class="spinner-border spinner-border-sm" role="status" aria-hidden="true"></span>').attr("disabled", true);
var url = "/UserInfo/SaveUser";
var send_data = {
Id: selected_id,
Name: $("#user_name_modal").val(),
Email: $("#user_email_modal").val(),
Account: $("#user_account_modal").val(),
Phone: $("#user_phone_modal").val(),
RoleId: $("#user_role_modal").val()
}
$.post(url, send_data, function (rel) {
$("#save-user-btn").html('確定').attr("disabled", false);
if (rel.code != "0000") {
if (rel.code == "9998") {
toast_warning(rel.msg);
return;
}
toast_error(rel.msg);
return;
}
toast_ok(rel.msg);
$('#user-modal').modal('hide');
userManagerTable.ajax.reload();
}, 'json')
.fail(function (xhr, status, error) {
$("#save-user-btn").html('確定').attr("disabled", false);
});
}
}
//#endregion
//#region 刪除使用者
$('#user_table').on("click", "button.del-btn", function () {
selected_id = $(this).parents('tr').attr('data-guid');
Swal.fire(
{
title: "刪除",
text: "你確定是否刪除此筆資料?",
type: "warning",
icon: 'warning',
showCancelButton: true,
confirmButtonText: "是",
cancelButtonText: "否"
}).then(function (result) {
if (result.value) {
var url = "/UserInfo/DeleteOneUser";
var send_data = {
guid: selected_id
}
$.post(url, send_data, function (rel) {
if (rel.code != "0000") {
toast_error(rel.msg);
return;
}
toast_ok(rel.msg);
userManagerTable.ajax.reload();
}, 'json');
}
});
});
//#endregion
</script>
<script>
var roleManagerTable;
var selected_roleGUID = "0";
$(function () {
//#region 角色資料 DataTable
roleManagerTable = $("#role_table").DataTable({
"columns": [
{
"data": null,
"render": function (data, type, row, meta) {
return meta.row + 1;
}
},
{
"data": "full_name"
},
{
"data": "created_at"
},
{
"data": "layer",
"render": function (data, type, row, meta) {
if (@ViewBag.myUserInfo.Layer == 0) {
if (data == 1) {
return '<button class="btn btn-primary edit-btn">修改</button> <button class="btn btn-danger del-btn">刪除</button>';
} else {
return '<button class="btn btn-primary edit-btn">修改</button>';
}
} else {
if (data == 1) {
return '<button class="btn btn-primary edit-btn">修改</button> <button class="btn btn-danger del-btn">刪除</button>';
} else {
return '';
}
}
}
}
],
//"order": [[2, "desc"]],
'createdRow': function (row, data, dataIndex) {
$(row).attr('data-guid', data.role_guid);
},
"ajax": {
"url": "/UserInfo/RoleManagerList",
"type": "POST",
"data": function (d) {
d.post = 0;
},
"dataSrc": function (rel) {
if (rel.code == "9999") {
toast_error(rel.msg);
return;
}
data = rel.data;
if (data == null || data.length == 0) {
this.data = [];
}
return data;
}
}
});
//#endregion
});
//#region 新增角色
function AddRole() {
selected_roleGUID = "0";
$("#role-modal .modal-title").html("角色資料 - 新增");
$("#role-form").trigger("reset");
$("#role-modal").modal();
}
//#endregion
//#region 編輯角色
$('#role_table').on("click", "button.edit-btn", function () {
$("#user-modal .modal-title").html("人員基本資料 - 編輯");
selected_roleGUID = $(this).parents('tr').attr('data-guid');
//取得單一使用者管理員
var url = "/UserInfo/GetOneRole/";
var send_data = {
guid: selected_roleGUID
}
$.post(url, send_data, function (rel) {
if (rel.code == "9999") {
toast_error(rel.msg);
return;
}
else if (rel.code == "9998") {
toast_error(rel.msg);
return;
}
$("#role_name_modal").val(rel.data.full_name);
$("#role-modal").modal();
}, 'json');
});
//#endregion
//#region 角色表單驗證
$("#role-form").validate({
rules: {
role_name_modal: {
required: true
}
},
});
//#endregion
//#region 儲存角色
function SaveRole() {
if ($("#role-form").valid()) {
$("#save-role-btn").html('<span class="spinner-border spinner-border-sm" role="status" aria-hidden="true"></span>').attr("disabled", true);
var url = "/UserInfo/SaveRole";
var send_data = {
Id: selected_roleGUID,
Name: $("#role_name_modal").val(),
}
$.post(url, send_data, function (rel) {
$("#save-role-btn").html('確定').attr("disabled", false);
if (rel.code != "0000") {
toast_error(rel.msg);
return;
}
toast_ok(rel.msg);
$('#role-modal').modal('hide');
roleManagerTable.ajax.reload();
}, 'json')
.fail(function (xhr, status, error) {
$("#save-role-btn").html('確定').attr("disabled", false);
});
}
}
//#endregion
//#region 刪除角色
$('#role_table').on("click", "button.del-btn", function () {
selected_roleGUID = $(this).parents('tr').attr('data-guid');
Swal.fire(
{
title: "刪除",
text: "你確定是否刪除此筆資料?",
type: "warning",
icon: 'warning',
showCancelButton: true,
confirmButtonText: "是",
cancelButtonText: "否"
}).then(function (result) {
if (result.value) {
var url = "/UserInfo/DeleteOneRole";
var send_data = {
guid: selected_roleGUID
}
$.post(url, send_data, function (rel) {
if (rel.code != "0000") {
if (rel.code == "9999") {
toast_error(rel.msg);
}
else if (rel.code == "9997") {
var htnl = rel.msg + "<br>"
Swal.fire(
{
title: "刪除失敗",
icon: 'warning',
html: htnl,
});
}
else {
toast_warning(rel.msg);
}
return;
}
else {
toast_ok(rel.msg);
roleManagerTable.ajax.reload();
return;
}
}, 'json');
}
});
});
//#endregion
</script>
<script>
var roleAuthTable;
var roleAuthNotJoinTable;
var selected_roleAuthGUID = "0";
var selected_build = "0";
var saveCheckAuth = [];
//var CheckCount = 0;
var AllCount = 0;
//var frontEndCheckAuth = [];
//var backEndCheckAuth = [];
//var oddAuthType;
//var oddBuild;
$(function () {
var url = "/UserInfo/RoleManagerList";
$.post(url, { post: 1 }, function (rel) {
if (rel.code != "0000") {
toast_error(rel.msg);
return;
}
if (rel.data.length > 0) {
$('#select_roleId_roleAuth_tab').empty();
$.each(rel.data, function (index, val) {
$("#select_roleId_roleAuth_tab").append($("<option />").val(val.role_guid).text(val.full_name));
});
//預設查詢第一個
$("#select_roleId_roleAuth_tab").val($("#select_roleId_roleAuth_tab option:first").val());
//#region 角色資料 DataTable
roleAuthTable = $("#roleAuth_table").DataTable({
"columns": [
{
"data": null,
"render": function (data, type, row, meta) {
return meta.row + 1;
}
},
{
"data": "role_full_name"
},
{
"data": "authTypeText"
},
{
"data": "building_full_name"
},
{
"data": "mainName"
},
{
"data": "subName"
},
{
"data": "created_at"
},
{
"data": null,
"defaultContent": '<button class="btn btn-danger del-btn">刪除</button>'
}
],
//"order": [[2, "desc"]],
'createdRow': function (row, data, dataIndex) {
$(row).attr('data-guid', data.role_guid);
$(row).attr('data-authCode', data.authCode);
},
"ajax": {
"url": "/UserInfo/RoleAuthList",
"type": "POST",
"data": function (d) {
d.SelectedRoleId = $('#select_roleId_roleAuth_tab').val();
},
"dataSrc": function (rel) {
if (rel.code == "9999") {
toast_error(rel.msg);
return;
}
data = rel.data;
if (data == null || data.length == 0) {
this.data = [];
}
return data;
}
}
});
//#endregion
} else {
$("#select_roleId_roleAuth_tab").empty();
$("#select_roleId_roleAuth_tab").append('<option value="0" disabled>請先新增角色</option>');
$("#select_roleId_roleAuth_tab").val($("#user_role_modal option:first").val());
}
}, 'json');
//#region 角色未加入權限列表 DataTable
roleAuthNotJoinTable = $("#roleAuth_NotJoin_table").DataTable({
//"order": [[1, "desc"]],
"columns": [
{
"data": "authCode"
},
{
"data": "mainName"
},
{
"data": "subName"
}
],
"columnDefs": [{
'targets': 0,
'searchable': false,
'orderable': false,
'className': 'dt-body-center',
'render': function (data, type, full, meta) {
var check_html = "";
check_html += '<div class="custom-control custom-checkbox">';
//判斷是否要Check
var checkHtml = "";
if (saveCheckAuth.length > 0) {
var filterAuth = saveCheckAuth.filter(function (i, n) {
return i === data;
});
if (filterAuth.length > 0) {
checkHtml = "checked";
}
}
check_html += `<input type="checkbox" class="custom-control-input" name="selectedAuthPage[]" id="auth-page-${data}" value="${data}" ${checkHtml} /> `;
check_html += '<label class="custom-control-label" for="auth-page-' + data + '" />';
check_html += '</div>';
return check_html;
}
}],
'createdRow': function (row, data, dataIndex) {
$(row).attr('data-authCode', data.authCode);
},
"ajax": {
"url": "/UserInfo/GetRoleNotAuthPageList",
"type": "POST",
"data": function (d) {
d.SelectedRoleId = $('#select_roleId_roleAuth_tab').val();
d.SelectedAuthType = $("#select_authType").val();
d.SelectedBuild = selected_build;
},
"dataSrc": function (rel) {
if (rel.data.code == "9999") {
toast_error(rel.data.msg);
return;
}
data = rel.data;
AllCount = data.length;
console.log("AllCount", AllCount);
if (data == null || data.length == 0) {
this.data = [];
}
return data;
}
},
//"drawCallback": function (settings) {
// if (AllCount > 0) {
// var rows = roleAuthNotJoinTable.rows({ 'search': 'applied' }).nodes().length;
// var checkAuths = $("input[name='selectedAuthPage[]']:checked", rows).map(function () {
// return $(this).val();
// }).get();
// console.log("drawCallback", checkAuths.length);
// if (AllCount == CheckCount.length) {
// $("#select-all-role-auth").prop('checked', true);
// }
// else {
// $("#select-all-role-auth").prop('checked', false);
// }
// }
// else {
// $("#select-all-role-auth").prop('checked', false);
// }
// CheckCount = 0;
//}
});
//#endregion
});
//#region 角色權限全選
$("#select-all-role-auth").change(function () {
var rows = roleAuthNotJoinTable.rows({ 'search': 'applied' }).nodes();
$("input[name='selectedAuthPage[]']", rows).prop('checked', this.checked);
});
//#endregion
//#region 選擇角色下拉式選單select_option
$("#select_roleId_roleAuth_tab").change(function () {
roleAuthTable.ajax.reload();
});
//#endregion
//#region 新增角色權限
async function AddRoleAuth() {
$("#select_authType").val(1);
await authTypeChange();
//oddBuild = $("#select_building").val();
roleAuthNotJoinTable.ajax.reload();
saveCheckAuth = [];
$("#role-auth-modal").modal();
}
//#endregion
//#region 選擇角色類型下拉式選單select_option
function authTypeChange() {
return new Promise((resolve, reject) => {
if ($("#select_authType").val() == "1") {
$("#select_building").show();
var url = "/BuildInfo/BuildInfoList";
$.post(url, null, function (rel) {
if (rel.code != "0000") {
toast_error(rel.msg);
return;
}
if (rel.data.length > 0) {
$('#select_building').empty();
$.each(rel.data, function (index, val) {
$("#select_building").append($("<option />").val(val.building_guid).text(val.full_name));
});
//預設查詢第一個
$("#select_building").val($("#select_building option:first").val());
selected_build = $("#select_building option:first").val();
roleAuthNotJoinTable.ajax.reload();
//#endregion
} else {
$("#select_building").empty();
$("#select_building").append('<option value="0" disabled>請先新增區域</option>');
$("#select_building").val($("#select_building option:first").val());
}
resolve();
}, 'json');
}
else {
selected_build = "0";
$("#select_building").hide();
roleAuthNotJoinTable.ajax.reload();
resolve();
}
});
}
$("#select_authType").change(function () {
$("#select-all-role-auth").prop('checked', false);
CheckAuthMain();
authTypeChange();
});
//#endregion
//#region 選擇區域下拉式選單select_option
$("#select_building").change(function () {
$("#select-all-role-auth").prop('checked', false);
CheckAuthMain();
selected_build = $("#select_building").val();
roleAuthNotJoinTable.ajax.reload();
});
//#endregion
//#region 儲存Check
async function CheckAuthMain() {
await CheckAuth();
}
function CheckAuth() {
return new Promise((resolve, reject) => {
var rows = roleAuthNotJoinTable.rows({ 'search': 'applied' }).nodes();
//取得被選擇的角色權限
var checkAuths = $("input[name='selectedAuthPage[]']:checked", rows).map(function () {
return $(this).val();
}).get();
var uncheckAuths = $("input[name='selectedAuthPage[]']:not(:checked)", rows).map(function () {
return $(this).val();
}).get();
//勾選
if (checkAuths.length > 0) {
$.each(checkAuths, function (index, val) {
var dbindex = saveCheckAuth.findIndex(x => x == val);
if (dbindex == -1) {
saveCheckAuth.push(val);
}
});
}
//未勾選
if (uncheckAuths.length > 0) {
$.each(uncheckAuths, function (index, val) {
var dbindex = saveCheckAuth.findIndex(x => x == val);
if (dbindex >= 0) {
saveCheckAuth.splice(dbindex, 1);
}
});
}
resolve();
});
}
//#endregion
//#region 刪除角色權限
$('#roleAuth_table').on("click", "button.del-btn", function () {
var row_guid = $(this).parents('tr').attr('data-guid');
var row_authCode = $(this).parents('tr').attr('data-authCode');
//var split_arr = row_id_authCode.split("_");
Swal.fire(
{
title: "刪除",
text: "你確定是否刪除此筆資料?",
type: "warning",
icon: 'warning',
showCancelButton: true,
confirmButtonText: "是",
cancelButtonText: "否"
}).then(function (result) {
if (result.value) {
//取得單一系統管理員
var url = "/UserInfo/DeleteOneRoleAuth/";
var send_data = {
RoleId: row_guid,
AuthCode: row_authCode
}
$.post(url, send_data, function (rel) {
if (rel.code != "0000") {
toast_error(rel.msg);
return;
}
toast_ok(rel.msg);
roleAuthTable.ajax.reload();
}, 'json');
}
});
});
//#endregion
//#region 儲存角色權限
function SaveRoleAuth() {
CheckAuthMain();
$("#save-role-auth-btn").html('<span class="spinner-border spinner-border-sm" role="status" aria-hidden="true"></span>').attr("disabled", true);
var url = "/UserInfo/SaveRoleAuth";
var send_data = {
SelectedRoleId: $('#select_roleId_roleAuth_tab').val(),
SaveCheckAuth: saveCheckAuth
}
$.post(url, send_data, function (rel) {
$("#save-role-auth-btn").html('確定').attr("disabled", false);
if (rel.code != "0000") {
toast_error(rel.msg);
return;
}
toast_ok(rel.msg);
$("#role-auth-modal").modal('hide');
roleAuthTable.ajax.reload();
}, 'json')
.fail(function (xhr, status, error) {
$("#save-role-auth-btn").html('確定').attr("disabled", false);
});
}
//#endregion
</script>
}