var map = null;
var map2 = null;
var table;
var startAbrarMarker = null;
var isSetStartAbrarMarker = false;
var endAbrarMarker = null;
var isSetEndAbrarMarker = false;
var progressAbrarMarker = null;
var isSetprogressAbrarMarker = false;
var mapshow = null;
var startAbrarMarkershow = null;
var isSetStartAbrarMarkershow = false;
var endAbrarMarkershow = null;
var isSetEndAbrarMarkershow = false;
var staticMap = null;
var ekipAbrarMarkerJustShow = null;
var isSetEkipAbrarMarkerJustShow = false;
var startAbrarMarkerJustShow = null;
var isSetStartAbrarMarkerJustShow = false;
var endAbrarMarkerJustShow = null;
var isSetEndAbrarMarkerJustShow = false;
var list_province = [];
var list_citys = [];
var array_hold = [];
var array_hold_String = "";
var array_hold_String_edited;
var data_select_sec;
var array_hold_Axis_type = [];
var data_select_Axis_type;
var String_hold_Axis_type = "";
var String_edited_Axis_type;
var arry_select2_date;
var array_geted_date = [];
var hold_Data_p1 = "";
var pooriapo;
var edited_end_date;
var hold_Data_city1;
var city1_array = [];
var city1_String = "";
var city1_String_edited = "";
var hold_Data_city2;
var city2_array = [];
var city2_String = "";
var city2_String_edited = "";
var hold_Data_city3;
var city3_array = [];
var city3_String = "";
var city3_String_edited = "";
var hold_Data_province1;
var hold_Data_province2;
var hold_Data_province3;
var array_geted_date = [];
var edited_end_date;
var routeControls = [];
var routeControlsPath = [];
var popupArrays = [];
var popupArraysPath = [];
var polylinePath = null;
var startLatlng;
var endLatlng;
var progressLatlng;
var project_distance_check = {};
var flagshownmarker = 0;
var edit;
var idEdit;
var cost;
var mapCenterLat = null;
var mapCenterLng = null;
var tablesecond;
var hasError = false;
var province,
town,
axisName,
axisType,
projectTitle,
contractor,
consultant,
contractDate,
contractPrice,
contractDatePicker;
var provinces = [];
var towns = [];
var projectDistance = {};
var editProjectDistance = null;
var projectDistanceLastUpdate = null;
var projectDistanceLastUpdatestatus = null;
var projectDefaultDistances = null;
var project_distance_edit = {};
var project_title = "";
var rowId = 0;
var historyId = 0;
var sliderImages = null;
var slideIndexlayer = 1;
var idkol;
var objectshow = {};
var status;
var locationStartLatLng, locationEndLatLng;
var boundingbox;
var tooltipjson;
var max1 = null;
var max2 = null;
var max3 = null;
var max4 = null;
var max5 = null;
var max6 = null;
var max7 = null;
var max8 = null;
var max9 = null;
var max10 = null;
var max11 = null;
var max12 = null;
var max13 = null;
var min1 = null;
var min2 = null;
var min3 = null;
var min4 = null;
var min5 = null;
var min6 = null;
var min7 = null;
var min8 = null;
var min9 = null;
var min10 = null;
var min11 = null;
var min12 = null;
var min13 = null;
var tabletool;
var dataasli = [];
var progres1 = null;
var progres2 = null;
var progres3 = null;
var progres4 = null;
var progres5 = null;
var progres6 = null;
var progres7 = null;
var progres8 = null;
var progres9 = null;
var progres10 = null;
var progres11 = null;
var progres12 = null;
var progres13 = null;
var projectupdateimage = [];
var project_id;
var keyOfContract;
var cansubmit;
var startAbrarDivIcon = L.divIcon({
html: `
p>",
scrollX: true,
scrollY: "500px",
destroy: true,
pagingType: "simple_numbers",
language: {
sEmptyTable: "هیچ دادهای در جدول وجود ندارد",
sInfo: "نمایش _START_ تا _END_ از _TOTAL_ ردیف",
sInfoEmpty: "نمایش 0 تا 0 از 0 ردیف",
sInfoFiltered: "(فیلتر شده از _MAX_ ردیف)",
sInfoPostFix: "",
sInfoThousands: ",",
sLengthMenu: "نمایش _MENU_ ردیف",
sLoadingRecords: "در حال بارگزاری...",
sProcessing: "در حال پردازش...",
sSearch: " جستجو / فیلتر: ",
sZeroRecords: "رکوردی با این مشخصات پیدا نشد",
oPaginate: {
sFirst: "برگهی نخست",
sLast: "برگهی آخر",
sNext: "بعدی",
sPrevious: "قبلی",
},
oAria: {
sSortAscending: ": فعال سازی نمایش به صورت صعودی",
sSortDescending: ": فعال سازی نمایش به صورت نزولی",
},
},
order: [
[0, "asc"][(1, "asc")],
[2, "desc"],
[3, "desc"],
[4, "desc"]
],
order: [
[0, "desc"]
],
processing: true,
select: true,
ajax: {
url: "https://rms.rmto.ir/rahdari/road-danger-prevention/getlist",
type: "GET",
dataSrc: function (json) {
console.log("json", json.data);
cansubmit = json.can_submit;
if (cansubmit == 1) {
$("#add-project-button").css("display", "block");
} else if (cansubmit == 0) {
$("#add-project-button").css("display", "none");
}
return json.data;
},
},
columns: [{
className: "text-center",
data: null,
render: function (data, type, row, meta) {
return meta.row + 1;
},
},
{ data: "province_fa" },
{
data: null,
render: function (data, type, row) {
if (data.city_2_fa != null && data.city_3_fa != null)
return `${data.city_1_fa}-${data.city_2_fa}-${data.city_3_fa}`;
else if (data.city_2_fa != null)
return `${data.city_1_fa}-${data.city_2_fa}`;
else return `${data.city_1_fa}`;
},
},
{ data: "axis_name" },
{
data: "axis_type_fa",
},
{ data: "project_name" },
{ data: "contractor_name" },
{ data: "contract_date" },
{
data: null,
render: function (data, type, row) {
if (data.submited_at_fa == null) {
return "
";
} else {
return data.submited_at_fa;
}
}
},
{
className: "text-center",
data: null,
render: function (data, type, row) {
if (data.latest_history?.previous_status == 0) {
return "
";
}
if (data.last_updated_at_fa == null) {
return "
";
} else {
return data.last_updated_at_fa;
}
},
},
{
data: null,
render: function (data, type, row) {
if (data.latest_history?.previous_status == 0) {
return "
";
}
if (data.project_status_fa == null) {
return "
";
} else {
return data.project_status_fa;
}
},
},
{
data: "project_distance",
render: function (data, type, row) {
var testdata = "";
if (data != null) {
$.each(data, function (index, value) {
if (testdata.length != 0) {
testdata += "،";
}
if (index == 1) {
testdata += "تعریض و روکش ";
} else if (index == 2) {
testdata += "اصلاح قوس";
} else if (index == 3) {
testdata += "تراشه برداری ";
} else if (index == 4) {
testdata += "روشنایی نقطه ای ";
} else if (index == 5) {
testdata += "احداث تقاطع غیر هم سطح (پل / زیر گذر )";
} else if (index == 6) {
testdata += " ایمن سازی علائم و حفاظ";
} else if (index == 7) {
testdata += " اصلاح ورودی و خروجی";
} else if (index == 8) {
testdata += " تعریض ابنیه فنی";
} else if (index == 9) {
testdata += " سایر اقدامات";
}
});
return "" + testdata + "
";
} else return "_";
},
},
{
data: "project_distance_update",
render: function (data, type, row) {
var testdata = "";
var testarray = [];
var reversestring = "";
if (data != null) {
$.each(data, function (index, value) {
if (testdata.length == 0) {
testdata += "،";
testarray.push(" . ");
}
testdata += value[0] + "%";
testarray.push(value[0] + "%" + " ");
});
for (var i = testarray.length - 1; i >= 0; i--) {
reversestring += testarray[i];
}
return "" + reversestring + "
";
} else return "
";
},
},
{
className: "text-center",
data: null,
render: function (data, type, row) {
if (cansubmit == 1) {
if (data.status == 0) {
return ``;
} else if (data.status == 1) {
return ``;
} else if (data.status == 2) {
return ``;
}
}
else {
if (data.status == 0) {
return ``;
}
else if (data.status == 1) {
return ``;
}
else if (data.status == 2) {
return ``;
}
}
},
},
],
columnDefs: [{
targets: [11],
visible: false,
searchable: false,
},
{
targets: [12],
visible: false,
searchable: false,
},
],
buttons: [
{
text: ' فیلترینگ پیشرفته
',
action: function (e, dt, node, config) {
if ($(".parent-filter").css("display") == "none") {
$(".parent-filter").css("display", "block");
showLoaderScreen();
setTimeout(() => {
hideLoaderScreen();
}, 200);
} else if ($(".parent-filter").css("display") != "none") {
$(".parent-filter").css("display", "none");
}
},
},
{
text: " دانلود فیلم راهنما
",
action: function (e, dt, node, config) {
window.open("/storage/video_2020-10-02_13-47-58.mp4", "_blank");
},
},
{
extend: "excelHtml5",
title: "Excel",
text: ' خروجی به اکسل
',
messageTop: "روکش آسفالت (نگهداری راه)",
exportOptions: {
columns: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13],
},
customize: function (xlsx) {
var sheet = xlsx.xl.worksheets["sheet1.xml"];
$('row c[r^="M"]', sheet).each(function () {
$(this).attr("s", "52");
});
$('row c[r^="N"]', sheet).each(function () {
$(this).attr("s", "52");
});
},
},
],
initComplete: function () {
$("body").find(".dataTables_scrollBody").addClass("scrollbar");
$(".dt-buttons").append(`
+
در دست برنامه ریزی اولیه
در دست مطالعه و تهیه اسناد مناقصه
در دست مناقصه
در حال تجهیز کارگاه
در حال اجرا/فعال
در حال اجرا/متوقف
در حال آماده سازی برای افتتاح
تکمیل و خاتمه یافته و بهره برداری شده
روستایی
فرعی
اصلی
شریانی
فیلتر
`);
$(".js-example-basic-multiple").append(
'انتخاب اداره کل '
);
$(".btn-increase").prop("disabled", true);
init_row_filter();
$("#select-province1").on("change", function () {
init_data_filter1();
$(".btn-increase").prop("disabled", false);
});
$("#select-province2").on("change", function () {
init_data_filter2();
$(".btn-increase").prop("disabled", false);
});
$("#select-province3").on("change", function () {
init_data_filter3();
});
$(".last_statusfilter").select2({
multiple: true,
placeholder: "اخرین وضعیت پروژه",
width: "resolve",
dir: "rtl",
});
$("#select-city1").select2({
dir: "rtl",
placeholder: "انتخاب شهرستان",
width: "resolve",
});
$("#select-city2").select2({
dir: "rtl",
placeholder: "انتخاب شهرستان",
width: "resolve",
});
$("#select-city3").select2({
dir: "rtl",
placeholder: "انتخاب شهرستان",
width: "resolve",
});
$(".typemehvar").select2({
multiple: true,
placeholder: "نوع محور",
dir: "rtl",
width: "resolve",
});
$(".yearfilter").select2({
multiple: true,
placeholder: "سال شروع",
dir: "rtl",
width: "resolve",
});
var current_year;
current_year = new persianDate().year();
for (let i = 1396; i <= current_year; i++) {
$(".yearfilter").prepend(
"\
" +
i.toString() +
" \
"
);
}
$(".yearfilter").append(`سال 1395 و ما قبل `);
$(".last_statusfilter").on("change", function () {
data_select_sec = null;
array_hold = [];
array_hold_String = "";
array_hold_String_edited = "";
data_select_sec = $(".last_statusfilter").select2("data");
});
$(".typemehvar").on("change", function () {
array_hold_Axis_type = [];
data_select_Axis_type = null;
String_hold_Axis_type = "";
String_edited_Axis_type = "";
data_select_Axis_type = $(".typemehvar").select2("data");
});
$(".yearfilter").on("change", function () {
arry_select2_date = null;
array_geted_date = [];
hold_Data_p1 = "";
pooriapo = null;
edited_end_date = null;
arry_select2_date = $(".yearfilter").select2("data");
});
$("#select-city1").on("change", function () {
hold_Data_city1 = null;
city1_array = [];
city1_String = "";
city1_String_edited = "";
hold_Data_city1 = $("#select-city1").select2("data");
});
$("#select-city2").on("change", function () {
hold_Data_city2 = null;
city2_array = [];
city2_String = "";
city2_String_edited = "";
hold_Data_city1 = $("#select-city1").select2("data");
});
$("#select-city3").on("change", function () {
hold_Data_city3;
city3_array = [];
city3_String = "";
city3_String_edited = "";
hold_Data_city1 = $("#select-city1").select2("data");
});
$("#select-province1").on("change", function () {
hold_Data_province1 = null;
hold_Data_province1 = $("#select-province1 option:selected").text();
console.log(typeof hold_Data_province1);
});
$("#select-province2").on("change", function () {
hold_Data_province2 = null;
hold_Data_province2 = $("#select-province2 option:selected").text();
});
$("#select-province3").on("change", function () {
hold_Data_province3 = null;
hold_Data_province3 = $("#select-province3 option:selected").text();
});
$("#btn_filter_show").on("click", function () {
if ($(".typemehvar").select2("data").length == 0) {
$("#example").DataTable().column(4).search("").draw();
}
if ($(".last_statusfilter").select2("data").length == 0) {
$("#example").DataTable().column(10).search("").draw();
}
if ($(".yearfilter").select2("data").length == 0) {
$("#example").DataTable().column(7).search("").draw();
}
var test = "|";
var hold_Data_p1 = "";
var pooriapo;
if (arry_select2_date) {
for (let i = 0; i < arry_select2_date.length; i++) {
array_geted_date.push(arry_select2_date[i].text);
}
}
if (
array_geted_date[array_geted_date.length - 1] == "سال 1395 و ما قبل"
) {
for (let i = 1300; i <= 1395; i++) {
array_geted_date.unshift(i.toString());
}
pooriapo = array_geted_date.slice(0, array_geted_date.length - 1);
for (let i = 0; i < pooriapo.length; i++) {
hold_Data_p1 += pooriapo[i].concat("|");
}
} else {
for (let i = 0; i < array_geted_date.length; i++) {
hold_Data_p1 += array_geted_date[i].concat("|");
}
}
if (hold_Data_p1[hold_Data_p1.length - 1] === "|") {
edited_end_date = hold_Data_p1.slice(0, hold_Data_p1.length - 1);
}
if (edited_end_date) {
$("#example")
.DataTable()
.column(7)
.search(edited_end_date, true, false)
.draw();
}
if (
($("#select-province1").val() && $("#select-province1").val() != 0) ||
($("#select-province2").val() && $("#select-province2").val() != 0) ||
($("#select-province3").val() && $("#select-province3").val() != 0)
) {
$("#example")
.DataTable()
.column(1)
.search(
hold_Data_province1 +
test +
hold_Data_province2 +
test +
hold_Data_province3,
true,
false
)
.draw();
}
if (hold_Data_city1) {
for (let i = 0; i < hold_Data_city1.length; i++) {
city1_array.push(hold_Data_city1[i].text.trim().concat("|"));
}
}
for (let i = 0; i < city1_array.length; i++) {
city1_String += city1_array[i];
}
if (city1_String[city1_String.length - 1] == "|") {
city1_String_edited = city1_String.slice(0, city1_String.length - 1);
}
hold_Data_city2 = $("#select-city2").select2("data");
for (let i = 0; i < hold_Data_city2.length; i++) {
city2_array.push(hold_Data_city2[i].text.trim().concat("|"));
}
for (let i = 0; i < city2_array.length; i++) {
city2_String += city2_array[i];
}
if (city2_String[city2_String.length - 1] == "|") {
city2_String_edited = city2_String.slice(0, city2_String.length - 1);
}
hold_Data_city3 = $("#select-city3").select2("data");
for (let i = 0; i < hold_Data_city3.length; i++) {
city3_array.push(hold_Data_city3[i].text.trim().concat("|"));
}
if (city3_array) {
for (let i = 0; i < city3_array.length; i++) {
city3_String += city3_array[i];
}
}
if (city3_String[city3_String.length - 1] == "|") {
city3_String_edited = city3_String.slice(0, city3_String.length - 1);
}
var farsamoner;
var farsamNum = 0;
if (city1_String_edited) {
farsamoner = city1_String_edited;
farsamNum++;
}
if (city2_String_edited) {
farsamNum != 0 ? (farsamoner += "|") : (farsamoner += "");
farsamoner += city2_String_edited;
farsamNum++;
}
if (city3_String_edited) {
farsamNum != 0 ? (farsamoner += "|") : (farsamoner += "");
farsamoner += city3_String_edited;
}
if (farsamoner) {
$("#example")
.DataTable()
.column(2)
.search(farsamoner, true, false)
.draw();
}
if (data_select_sec) {
for (let i = 0; i < data_select_sec.length; i++) {
array_hold.push(data_select_sec[i].text.trim());
}
for (var i = 0; i < array_hold.length; i++) {
array_hold_String += array_hold[i].concat("|");
}
if (array_hold_String[array_hold_String.length - 1] == "|") {
array_hold_String_edited = array_hold_String.slice(
0,
array_hold_String.length - 1
);
}
if (array_hold_String_edited) {
$("#example")
.DataTable()
.column(10)
.search(array_hold_String_edited, true, false)
.draw();
}
}
if (data_select_Axis_type) {
for (var i = 0; i < data_select_Axis_type.length; i++) {
array_hold_Axis_type.push(
data_select_Axis_type[i].text.trim().concat("|")
);
}
for (let i = 0; i < array_hold_Axis_type.length; i++) {
String_hold_Axis_type += array_hold_Axis_type[i];
}
if (String_hold_Axis_type[String_hold_Axis_type.length - 1] === "|") {
String_edited_Axis_type = String_hold_Axis_type.slice(
0,
String_hold_Axis_type.length - 1
);
}
if (String_edited_Axis_type) {
$("#example")
.DataTable()
.column(4)
.search(String_edited_Axis_type, true, false)
.draw();
}
}
$(".parent-filter").css("display", "none");
});
},
});
$(".btn-increase").on("click", function () {
init_row_filter();
$(".btn-increase").prop("disabled", true);
init_data_filter2();
init_data_filter3();
});
function init_row_filter() {
$.ajax({
url: "https://rms.rmto.ir/public/contents/provinces",
type: "GET",
success: function (data) {
list_province = data.data;
for (let index = 0; index < list_province.length; index++) {
$(".js-example-basic-multiple").append(
"\
" +
list_province[index].name_fa +
" \
"
);
}
},
});
}
function init_data_filter1() {
let hold_idSelect = $("#select-province1").val();
console.log(hold_idSelect);
$.ajax({
url: "https://rms.rmto.ir/public/contents/provinces/" + hold_idSelect,
type: "GET",
success: function (data) {
list_citys = data.data;
$("#select-city1").html("");
for (let index = 0; index < list_citys.length; index++) {
$("#select-city1").append(
"\
" +
list_citys[index].name_fa +
" \
"
);
}
},
});
if ($("#select-province1").val() != 0) {
$(".btn-increase").prop("disabled", false);
}
$(".btn-increase").on("click", function () {
$("#append-input-forFilter2").removeClass("d-none");
});
}
function init_data_filter2() {
$("#select-province2").on("change", function () {
let hold_idSelect = $("#select-province2").val();
$.ajax({
url: "https://rms.rmto.ir/public/contents/provinces/" + hold_idSelect,
type: "GET",
success: function (data) {
list_citys = data.data;
$("#select-city2").html("");
for (let index = 0; index < list_citys.length; index++) {
$("#select-city2").append(
"\
" +
list_citys[index].name_fa +
" \
"
);
}
},
});
if ($("#select-province2").val() != 0) {
$(".btn-increase").prop("disabled", false);
}
$(".btn-increase").on("click", function () {
$("#append-input-forFilter3").removeClass("d-none");
});
});
}
function init_data_filter3() {
$("#select-province3").on("change", function () {
let hold_idSelect = $("#select-province3").val();
$.ajax({
url: "https://rms.rmto.ir/public/contents/provinces/" + hold_idSelect,
type: "GET",
success: function (data) {
list_citys = data.data;
$("#select-city3").empty("");
for (let index = 0; index < list_citys.length; index++) {
$("#select-city3").append(
"\
" +
list_citys[index].name_fa +
" \
"
);
}
},
});
if ($("#select-province3").val() != 0) {
$(".btn-increase").prop("disabled", false);
}
});
}
});
function createLeafletMap(startP, endP, update) {
console.log("createLeafletMap");
let bounds = [
[42.9130026312, 75.6166317076],
[20.5782370061, 35.5092252948],
];
let mapName;
if (!update) {
console.log("hewre ");
map = new L.map("abrar-map", {
maxBounds: bounds,
minZoom: 6,
}).setView(startP, 9);
mapName = map;
} else {
console.log("hello map 22222");
map2 = new L.map("abrar-map-2", {
maxBounds: bounds,
minZoom: 6,
}).setView(startP, 9);
mapName = map2;
}
L.tileLayer("https://testmap.141.ir/141map/{z}/{x}/{y}.png", {}).addTo(
mapName
);
if (update) {
startAbrarMarker = new L.marker(startP, {
icon: startAbrarDivIcon,
draggable: false,
}).addTo(mapName);
} else {
startAbrarMarker = new L.marker(startP, {
icon: startAbrarDivIcon,
draggable: true,
}).addTo(mapName);
}
if (!edit) {
endAbrarMarker = new L.marker(endP, {
icon: endAbrarDivIcon,
draggable: true,
});
} else {
isSetStartAbrarMarker = true;
$("#pin-marker-start").removeClass("pin-move pin-warn").addClass("pin-set");
if (update) {
mapName = map2;
if (endAbrarMarker && endP[0] != "NaN") {
endAbrarMarker.remove();
endAbrarMarker.setLatLng(endP);
endAbrarMarker.addTo(mapName);
isSetEndAbrarMarker = true;
$("#pin-marker-end")
.removeClass("pin-move pin-warn")
.addClass("pin-set");
checkMarkersAndDrawPath(update);
} else if (!endAbrarMarker && endP[0] != "NaN") {
endAbrarMarker = new L.marker(endP, {
icon: endAbrarDivIcon,
draggable: false,
});
endAbrarMarker.addTo(mapName);
isSetEndAbrarMarker = true;
$("#pin-marker-end")
.removeClass("pin-move pin-warn")
.addClass("pin-set");
checkMarkersAndDrawPath(update);
} else if (endAbrarMarker && endP[0] == "NaN") {
endAbrarMarker.remove();
}
progressAbrarMarker = new L.marker(
[parseFloat(startP[0]), parseFloat(startP[1]) + 1], {
icon: progressAbrarDivIcon,
draggable: true,
}
).addTo(mapName);
progressAbrarMarker.on("click", function () {
console.log("clickstart");
if (!isSetprogressAbrarMarker) {
progressAbrarMarker.setLatLng(L.latLng(mapName.getCenter()));
isSetprogressAbrarMarker = true;
$("#pin-marker-progress")
.removeClass("pin-move pin-warn")
.addClass("pin-set");
}
});
mapName.on("move", function () {
if (!isSetprogressAbrarMarker) {
progressAbrarMarker.setLatLng(L.latLng(mapName.getCenter()));
$("#pin-marker-progress").removeClass("pin-set").addClass("pin-move");
}
});
mapName.on("moveend", function () {
if (!isSetprogressAbrarMarker) {
progressAbrarMarker.setLatLng(L.latLng(mapName.getCenter()));
$("#pin-marker-progress").removeClass("pin-move pin-set");
}
});
progressAbrarMarker.on("drag", function () {
$("#pin-marker-progress").addClass("pin-move");
});
progressAbrarMarker.on("dragend", function () {
$("#pin-marker-progress").removeClass("pin-move");
if (
$("#pin-marker-progress").hasClass("pin-set") ||
isSetprogressAbrarMarker
) {
$("#pin-marker-progress").addClass("pin-set");
} else {
mapName.setView(progressAbrarMarker.getLatLng());
}
});
} else {
mapName = map;
if (endAbrarMarker && endP[0] != "NaN") {
endAbrarMarker.remove();
endAbrarMarker.setLatLng(endP);
endAbrarMarker.addTo(mapName);
isSetEndAbrarMarker = true;
$("#pin-marker-end")
.removeClass("pin-move pin-warn")
.addClass("pin-set");
checkMarkersAndDrawPath(update);
console.log("edit1");
} else if (!endAbrarMarker && endP[0] != "NaN") {
endAbrarMarker = new L.marker(endP, {
icon: endAbrarDivIcon,
draggable: true,
});
endAbrarMarker.addTo(mapName);
isSetEndAbrarMarker = true;
$("#pin-marker-end")
.removeClass("pin-move pin-warn")
.addClass("pin-set");
console.log("edit2");
console.log(endP);
checkMarkersAndDrawPath(update);
} else if (endAbrarMarker && endP[0] == "NaN") {
endAbrarMarker.remove();
endAbrarMarker.setLatLng([
parseFloat(startP[0]),
parseFloat(startP[1]) + 1,
]);
endAbrarMarker.addTo(mapName);
isSetEndAbrarMarker = false;
$("#pin-marker-end").removeClass("pin-move pin-warn pin-set");
console.log("edit3");
} else {
endAbrarMarker = new L.marker(
[parseFloat(startP[0]), parseFloat(startP[1]) + 1], {
icon: endAbrarDivIcon,
draggable: true,
}
);
endAbrarMarker.addTo(mapName);
isSetEndAbrarMarker = false;
$("#pin-marker-end").removeClass("pin-move pin-warn pin-set");
console.log("edit4");
}
}
}
mapName.on("move", function () {
if (!isSetStartAbrarMarker && !isSetEndAbrarMarker) {
startAbrarMarker.setLatLng(L.latLng(mapName.getCenter()));
$("#pin-marker-start").removeClass("pin-set").addClass("pin-move");
}
if (isSetStartAbrarMarker && !isSetEndAbrarMarker && !update) {
endAbrarMarker.setLatLng(L.latLng(mapName.getCenter()));
$("#pin-marker-end").removeClass("pin-set").addClass("pin-move");
}
});
mapName.on("moveend", function () {
if (!isSetStartAbrarMarker && !isSetEndAbrarMarker) {
startAbrarMarker.setLatLng(L.latLng(mapName.getCenter()));
$("#pin-marker-start").removeClass("pin-move pin-set");
}
if (isSetStartAbrarMarker && !isSetEndAbrarMarker && !update) {
endAbrarMarker.setLatLng(L.latLng(mapName.getCenter()));
$("#pin-marker-end").removeClass("pin-move pin-set");
}
});
startAbrarMarker.on("click", function () {
console.log("clickstart");
if (!isSetStartAbrarMarker) {
startAbrarMarker.setLatLng(L.latLng(mapName.getCenter()));
isSetStartAbrarMarker = true;
$("#pin-marker-start")
.removeClass("pin-move pin-warn")
.addClass("pin-set");
$("#stepModalmaintenance input[name=abrar-project-latlng-start]").val(
startAbrarMarker.getLatLng().lat.toFixed(6) +
startAbrarMarker.getLatLng().lng.toFixed(6)
);
$(
"#stepModalmaintenance input[name=abrar-project-latlng-start]"
).removeClass("is-invalid-input");
let markerLatLng = [
startAbrarMarker.getLatLng().lat,
startAbrarMarker.getLatLng().lng + 0.0008,
];
mapName.setView(markerLatLng);
endAbrarMarker.setLatLng(markerLatLng);
endAbrarMarker.addTo(mapName);
}
});
if (endAbrarMarker) {
endAbrarMarker.on("click", function () {
console.log("clickend");
if (!isSetEndAbrarMarker) {
endAbrarMarker.setLatLng(L.latLng(mapName.getCenter()));
isSetEndAbrarMarker = true;
$("#pin-marker-end").removeClass("pin-move").addClass("pin-set");
$("#stepModalmaintenance input[name=abrar-project-latlng-end]").val(
endAbrarMarker.getLatLng().lat.toFixed(6) +
endAbrarMarker.getLatLng().lng.toFixed(6)
);
$(
"#stepModalmaintenance input[name=abrar-project-latlng-end]"
).removeClass("is-invalid-input");
checkMarkersAndDrawPath(update);
}
});
endAbrarMarker.on("drag", function () {
$("#pin-marker-end").addClass("pin-move");
checkMarkersAndDrawPath(update);
});
endAbrarMarker.on("dragend", function () {
$("#pin-marker-end").removeClass("pin-move");
if ($("#pin-marker-end").hasClass("pin-set") || isSetEndAbrarMarker) {
$("#stepModalmaintenance input[name=abrar-project-latlng-end]").val(
endAbrarMarker.getLatLng().lat.toFixed(6) +
endAbrarMarker.getLatLng().lng.toFixed(6)
);
$(
"#stepModalmaintenance input[name=abrar-project-latlng-end]"
).removeClass("is-invalid-input");
$("#pin-marker-end").addClass("pin-set");
checkMarkersAndDrawPath(update);
} else {
mapName.setView(endAbrarMarker.getLatLng());
}
});
}
startAbrarMarker.on("drag", function () {
$("#pin-marker-start").addClass("pin-move");
checkMarkersAndDrawPath(update);
});
startAbrarMarker.on("dragend", function () {
$("#pin-marker-start").removeClass("pin-move");
if ($("#pin-marker-start").hasClass("pin-set") || isSetStartAbrarMarker) {
$("#stepModalmaintenance input[name=abrar-project-latlng-start]").val(
startAbrarMarker.getLatLng().lat.toFixed(6) +
startAbrarMarker.getLatLng().lng.toFixed(6)
);
$(
"#stepModalmaintenance input[name=abrar-project-latlng-start]"
).removeClass("is-invalid-input");
$("#pin-marker-start").addClass("pin-set");
checkMarkersAndDrawPath(update);
} else {
mapName.setView(startAbrarMarker.getLatLng());
}
});
}
$("#example").on("click", "button.image-show", function () {
var tr = $(this).closest("tr");
var row = table.row(tr);
idkol = row.data().id;
console.log("idkol", idkol);
// showLoaderScreen();
$.ajax({
url:
"https://rms.rmto.ir/api/public/road-danger-prevention/" +
idkol +
"/getproject",
type: "GET",
success: function (result) {
console.log(result);
if (result.data[0].images.lengsth != 0) {
opensliderforeachrow(result.data[0], 1);
}
},
});
});
function opensliderforeachrow(row, main) {
console.log("rr", row);
sliderImages = row.images;
let updated_at;
let dataLength = sliderImages.length;
console.log(sliderImages);
$("#slideshow-slide").find(".mySlides").remove();
$("#slideshow-dot").find(".dot").remove();
for (let index = 0; index < sliderImages.length; index++) {
var imageUrl;
var updateDate;
if (main == 1) {
imageUrl = sliderImages[index];
updateDate = row.last_updated_at;
} else {
imageUrl =
"https://rms.rmto.ir/storage" + sliderImages[index].path.slice(6);
console.log("hatman", imageUrl);
console.log("hasman", row.updated_at);
updateDate = row.updated_at;
}
console.log("indexxx", index + 1);
var test = index + 1;
let divSlide =
'' +
(index + 1) +
" / " +
sliderImages.length +
'
تصویر ' +
test +
":" +
" " +
"تاریخ :" +
updateDate +
"
";
$("#slideshow-slide").append(divSlide);
$("#slideshow-dot").append(
' '
);
}
if (dataLength > 0) {
slideindex = 1;
layerslidershow(slideindex);
$("#slideroverlay").css("display", "block");
}
}
function openSlidershowbutton(row, main) {
sliderImages = row.data().images;
console.log("have u ever", row.data());
let dataLength = sliderImages.length;
console.log(sliderImages);
$("#slideshow-slide").find(".mySlides").remove();
$("#slideshow-dot").find(".dot").remove();
for (let index = 0; index < sliderImages.length; index++) {
var imageUrl;
var updateDate;
if (main == 1) {
imageUrl = sliderImages[index];
updateDate = row.data().images_dates[index];
} else {
imageUrl =
"https://rms.rmto.ir/storage" + sliderImages[index].path.slice(6);
console.log("hatman", imageUrl);
console.log("hasman", row.data().updated_at);
updateDate = row.data().updated_at;
}
console.log("indexxx", index + 1);
var test = index + 1;
let divSlide =
'' +
(index + 1) +
" / " +
sliderImages.length +
'
تصویر ' +
test +
":" +
" " +
"تاریخ :" +
updateDate +
"
";
$("#slideshow-slide").append(divSlide);
$("#slideshow-dot").append(
' '
);
}
if (dataLength > 0) {
slideindex = 1;
layerslidershow(slideindex);
$("#slideroverlay").css("display", "block");
}
}
function createLeafletMapshow(startP, endP) {
console.log("histart");
var latapi1 = startP[0];
var lngapi1 = startP[1];
var latapi2 = endP[0];
var lngapi2 = endP[1];
let bounds = [
[42.9130026312, 75.6166317076],
[20.5782370061, 35.5092252948],
];
mapshow = new L.map("abrarshow-map", {
maxBounds: bounds,
minZoom: 6,
}).setView([latapi1, lngapi1], 9);
L.tileLayer("https://testmap.141.ir/141map/{z}/{x}/{y}.png", {}).addTo(
mapshow
);
startAbrarMarkershow = new L.marker(L.latLng(latapi1, lngapi1), {
icon: startAbrarDivIcon,
}).addTo(mapshow);
endAbrarMarkershow = new L.marker(L.latLng(latapi2, lngapi2), {
icon: endAbrarDivIcon,
}).addTo(mapshow);
isSetStartAbrarMarkershow = true;
$("#pin-marker-start").removeClass("pin-move pin-warn").addClass("pin-set");
isSetEndAbrarMarkershow = true;
$("#pin-marker-end").removeClass("pin-move").addClass("pin-set");
checkMarkersAndDrawPathshow();
}
function setmapshow(startp, endp) {
var latapi1 = startp[0];
var lngapi1 = startp[1];
var latapi2 = endp[0];
var lngapi2 = endp[1];
mapshow.removeLayer(startAbrarMarkershow);
mapshow.removeLayer(endAbrarMarkershow);
mapshow.setView([latapi1, lngapi1], 9);
startAbrarMarkershow = new L.marker(L.latLng(latapi1, lngapi1), {
icon: startAbrarDivIcon,
}).addTo(mapshow);
endAbrarMarkershow = new L.marker(L.latLng(latapi2, lngapi2), {
icon: endAbrarDivIcon,
}).addTo(mapshow);
isSetStartAbrarMarkershow = true;
$("#pin-marker-start").removeClass("pin-move pin-warn").addClass("pin-set");
isSetEndAbrarMarkershow = true;
$("#pin-marker-end").removeClass("pin-move").addClass("pin-set");
checkMarkersAndDrawPathshow();
}
function initialField() {
$("#axis-name-id").val("");
$("#axis-type-id").val("0");
$("#project-title-id").val("");
$("#yearshown").val(0);
$("#contractor-id").val("");
$("#consultant-id").val("");
$("#contract-date-id").val("");
$("#contract-price-id").val("");
$("#province-id").removeClass("is-invalid-input");
$("#axis-name-id").removeClass("is-invalid-input");
$("#axis-type-id").removeClass("is-invalid-input");
$("#project-title-id").removeClass("is-invalid-input");
$("#yearshown").removeClass("is-invalid-input");
$("#contractor-id").removeClass("is-invalid-input");
$("#consultant-id").removeClass("is-invalid-input");
$("#contract-date-id").removeClass("is-invalid-input");
$("#contract-price-id").removeClass("is-invalid-input");
}
function initialMarkerMapValue(latP, lngP) {
console.log("initialMarkerMapValue");
if (isSetStartAbrarMarker) {
endAbrarMarker.remove();
}
isSetEndAbrarMarker = false;
map.setView([latP, lngP], 9);
startAbrarMarker.setLatLng(L.latLng(map.getCenter()));
isSetStartAbrarMarker = false;
removeStartToEndPath(0);
$("#pin-marker-start").removeClass("pin-move pin-set");
$("#pin-marker-end").removeClass("pin-move pin-set");
$("#stepModalmaintenance input[name=abrar-project-latlng-start]").val("");
$("#stepModalmaintenance input[name=abrar-project-latlng-end]").val("");
$("#stepModalmaintenance input[name=abrar-project-latlng-start]").removeClass(
"is-invalid-input"
);
$("#stepModalmaintenance input[name=abrar-project-latlng-end]").removeClass(
"is-invalid-input"
);
}
function initialMarkerMapValueEdit(startP, endP, update) {
startAbrarMarker.setLatLng(startP);
isSetStartAbrarMarker = true;
$("#pin-marker-start").removeClass("pin-move pin-warn").addClass("pin-set");
if (update) {
mapName = map2;
removeStartToEndPath(1);
if (endAbrarMarker && endP[0] != "NaN") {
endAbrarMarker.remove();
endAbrarMarker.setLatLng(endP);
endAbrarMarker.addTo(mapName);
isSetEndAbrarMarker = true;
$("#pin-marker-end").removeClass("pin-move pin-warn").addClass("pin-set");
} else if (!endAbrarMarker && endP[0] != "NaN") {
endAbrarMarker = new L.marker(endP, {
icon: endAbrarDivIcon,
draggable: false,
});
endAbrarMarker.addTo(mapName);
isSetEndAbrarMarker = true;
$("#pin-marker-end").removeClass("pin-move pin-warn").addClass("pin-set");
} else if (endAbrarMarker && endP[0] == "NaN") {
endAbrarMarker.remove();
}
} else {
mapName = map;
removeStartToEndPath(0);
if (endAbrarMarker && endP[0] != "NaN") {
endAbrarMarker.remove();
endAbrarMarker.setLatLng(endP);
endAbrarMarker.addTo(mapName);
isSetEndAbrarMarker = true;
$("#pin-marker-end").removeClass("pin-move pin-warn").addClass("pin-set");
} else if (!endAbrarMarker && endP[0] != "NaN") {
endAbrarMarker = new L.marker(endP, {
icon: endAbrarDivIcon,
draggable: true,
});
endAbrarMarker.addTo(mapName);
isSetEndAbrarMarker = false;
$("#pin-marker-end").removeClass("pin-move pin-warn pin-set");
} else if (endAbrarMarker && endP[0] == "NaN") {
endAbrarMarker.remove();
endAbrarMarker.setLatLng([
parseFloat(startP[0]),
parseFloat(startP[1]) + 1,
]);
endAbrarMarker.addTo(mapName);
isSetEndAbrarMarker = false;
$("#pin-marker-end").removeClass("pin-move pin-warn pin-set");
} else {
endAbrarMarker = new L.marker(
[parseFloat(startP[0]), parseFloat(startP[1]) + 1], {
icon: endAbrarDivIcon,
draggable: true,
}
);
endAbrarMarker.addTo(mapName);
isSetEndAbrarMarker = false;
$("#pin-marker-end").removeClass("pin-move pin-warn pin-set");
}
}
}
function initialMarkerMapValueEditshow(startP, endP) {
console.log("initialMarkerMapValueEdit");
console.log("hello initial edit");
console.log(!endAbrarMarker);
removeStartToEndPath(0);
// if(endAbrarMarker){
endAbrarMarker.remove();
endAbrarMarker.setLatLng(endP);
endAbrarMarker.addTo(map);
startAbrarMarker.setLatLng(startP);
isSetStartAbrarMarker = true;
$("#pin-marker-start").removeClass("pin-move pin-warn").addClass("pin-set");
isSetEndAbrarMarker = true;
$("#pin-marker-end").removeClass("pin-move").addClass("pin-set");
checkMarkersAndDrawPath(0);
avrLat = (parseFloat(startP[0]) + parseFloat(endP[0])) / 2;
avrLng = (parseFloat(startP[1]) + parseFloat(endP[1])) / 2;
map.setView([avrLat, avrLng], 6);
}
$("#add-project-button").on("click", function () {
$("#tool-main").css("display", "none");
$("#update-table").css("display", "none");
$("#submitNewRow").attr("disabled", false);
edit = false;
showModal(0);
initialField();
if (map == null) {
setTimeout(() => {
createLeafletMap([35.6892, 51.389], [35.6892, 51.389], 0);
}, 200);
} else {
initialMarkerMapValue(35.6892, 51.389);
}
$("#province-id").empty();
$("#province-id").append('انتخاب اداره کل ');
// console.log(provinces);
for (let index = 0; index < provinces.length; index++) {
$("#province-id").append(
"\
" +
provinces[index].name_fa +
" \
"
);
}
});
$("#example").on("click", "tbody tr", function () {
if ($(this).hasClass("selected")) {
$(this).removeClass("selected");
$(this).css("color", "");
$(this).find("i").css("color", "");
} else {
table.$("tr.selected").find("i").css("color", "");
table.$("tr.selected").css("color", "");
table.$("tr.selected").removeClass("selected");
$(this).addClass("selected");
$(this).css("color", "white");
$(this).find("i").css("color", "white");
}
});
function scrolldown() {
console.log("hi");
$("html, body").animate({
scrollTop: $(".up").offset().top,
},
50
);
}
function scrolldowntable() {
console.log("hi");
$("html, body").animate({
scrollTop: $(".upnext").offset().top + 1000,
},
50
);
}
$("#example").on("click", "button.location-button", function () {
var tr = $(this).closest("tr");
var row = table.row(tr);
idkol = row.data().id;
console.log("idkol", idkol);
window.open(
"https://rms.rmto.ir/road-danger-prevention/showonmap?uid=" + idkol
);
});
$("#example").on("click", "button.projectdistance", function () {
$(".body-table-style").css("margin-bottom", "50px");
$(".container-fluid").css("margin-bottom", "100px");
dataasli = [];
$("#update-table").css("display", "none");
$("#noghte1").prop("checked", false);
$("#noghte2").prop("checked", false);
$("#noghte3").prop("checked", false);
$("#noghte4").prop("checked", false);
$("#noghte5").prop("checked", false);
$("#noghte6").prop("checked", false);
$("#noghte7").prop("checked", false);
$("#noghte8").prop("checked", false);
$("#tool-ehdas").css("display", "block");
scrolldown();
$("#distance-title").empty();
$(".acclabel1").css("color", "rgba(0, 0, 0, 0.5)");
$(".noghte1").css("color", "rgba(0, 0, 0, 0.5)");
$(".noghte2").css("color", "rgba(0, 0, 0, 0.5)");
$(".noghte3").css("color", "rgba(0, 0, 0, 0.5)");
$(".noghte4").css("color", "rgba(0, 0, 0, 0.5)");
$(".noghte5").css("color", "rgba(0, 0, 0, 0.5)");
$(".noghte6").css("color", "rgba(0, 0, 0, 0.5)");
$(".noghte7").css("color", "rgba(0, 0, 0, 0.5)");
$(".noghte8").css("color", "rgba(0, 0, 0, 0.5)");
var newobj = {};
var tr = $(this).closest("tr");
var row = table.row(tr);
idkol = row.data().id;
console.log(idkol);
status = row.data().status;
console.log(row);
console.log(row.data().id);
var projectTitle = row.data().project_name;
var axistype = row.data().axis_name;
var project_distance_check = row.data().project_distance;
var project_describe = row.data().project_description;
newobj[9] = ["1", project_describe];
$("#tozihat").val(project_describe);
restrictInputOtherThanArabic($("#tozihat"));
var objecttest = $.extend(project_distance_check, newobj);
console.log("pitikooki", objecttest);
dataasli.push(row.data());
console.log("pitikooooooooooooooooo", newobj);
var status = row.data().status;
console.log("pitiko", project_distance_check);
var titlecard =
"نوع عملیات " +
" " +
projectTitle +
" " +
"محور" +
" " +
axistype +
" " +
"به کیلومتر";
var note = '' + titlecard + " ";
$("#distance-title").append(note);
for (var i = 0; i < 5; i++) {
$("#ehdas" + i).prop("checked", false);
}
$.each(project_distance_check, function (key, value) {
if (key == 1) {
$("#noghte1").prop("checked", true);
}
if (key == 2) {
$("#noghte2").prop("checked", true);
}
if (key == 3) {
$("#noghte3").prop("checked", true);
}
if (key == 4) {
$("#noghte4").prop("checked", true);
}
if (key == 5) {
$("#noghte5").prop("checked", true);
}
if (key == 6) {
$("#noghte6").prop("checked", true);
}
if (key == 7) {
$("#noghte7").prop("checked", true);
}
if (key == 8) {
$("#noghte8").prop("checked", true);
}
});
// start show table
tabletool = $("#example-tool").DataTable({
dom: "rti",
scrollX: true,
destroy: true,
pagingType: "simple_numbers",
language: {
sEmptyTable: "هیچ دادهای در جدول وجود ندارد",
sInfo: "نمایش _START_ تا _END_ از _TOTAL_ ردیف",
sInfoEmpty: "نمایش 0 تا 0 از 0 ردیف",
sInfoFiltered: "(فیلتر شده از _MAX_ ردیف)",
sInfoPostFix: "",
sInfoThousands: ",",
sLengthMenu: "نمایش _MENU_ ردیف",
sLoadingRecords: "در حال بارگزاری...",
sProcessing: "در حال پردازش...",
sSearch: "جستجو: ",
sZeroRecords: "رکوردی با این مشخصات پیدا نشد",
oPaginate: {
sFirst: "برگهی نخست",
sLast: "برگهی آخر",
sNext: "بعدی",
sPrevious: "قبلی",
},
oAria: {
sSortAscending: ": فعال سازی نمایش به صورت صعودی",
sSortDescending: ": فعال سازی نمایش به صورت نزولی",
},
},
order: [
[0, "desc"]
],
processing: true,
// ajax: {
// url:
// "https://rms.rmto.ir/rahdari/road-danger-prevention/" +
// idkol +
// "/get-distance-update-list",
// type: "GET",
// dataSrc: function (json) {
// },
// },
data: dataasli,
columns: [{
data: null,
render: function (data, type, row, column) {
console.log("hhh", data);
if (data.status == 2) {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 1;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' ';
}
} else {
if (data.project_distance == null) {
return ' \
\
';
} else {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 1;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return ' \
\
';
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' \
\
';
}
}
}
},
},
{
data: null,
render: function (data, type, row, column) {
console.log("hhh", data);
if (data.status == 2) {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 2;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' ';
}
} else {
if (data.project_distance == null) {
return ' \
\
';
} else {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 2;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return ' \
\
';
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' \
\
';
}
}
}
},
},
{
data: null,
render: function (data, type, row, column) {
console.log("hhh", data);
if (data.status == 2) {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 3;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' ';
}
} else {
if (data.project_distance == null) {
return ' \
\
';
} else {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 3;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return ' \
\
';
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' \
\
';
}
}
}
},
},
{
data: null,
render: function (data, type, row, column) {
console.log("hhh", data);
if (data.status == 2) {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 4;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' ';
}
} else {
if (data.project_distance == null) {
return ' \
\
';
} else {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 4;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return ' \
\
';
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' \
\
';
}
}
}
},
},
{
data: null,
render: function (data, type, row, column) {
console.log("hhh", data);
if (data.status == 2) {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 5;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' ';
}
} else {
if (data.project_distance == null) {
return ' \
\
';
} else {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 5;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return ' \
\
';
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' \
\
';
}
}
}
},
},
{
data: null,
render: function (data, type, row, column) {
console.log("hhh", data);
if (data.status == 2) {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 6;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' ';
}
} else {
if (data.project_distance == null) {
return ' \
\
';
} else {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 6;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return ' \
\
';
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' \
\
';
}
}
}
},
},
{
data: null,
render: function (data, type, row, column) {
console.log("hhh", data);
if (data.status == 2) {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 7;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' ';
}
} else {
if (data.project_distance == null) {
return ' \
\
';
} else {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 7;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return ' \
\
';
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' \
\
';
}
}
}
},
},
{
data: null,
render: function (data, type, row, column) {
console.log("hhh", data);
if (data.status == 2) {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 8;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' ';
}
} else {
if (data.project_distance == null) {
return ' \
\
';
} else {
let keyIndex = Object.keys(data.project_distance).findIndex(
function (entry) {
return entry == 8;
}
);
console.log("key", keyIndex);
if (keyIndex == -1) {
console.log("hi");
return ' \
\
';
} else {
// console.log(Object.keys(data)[keyIndex]);
return ' \
\
';
}
}
}
},
},
{
className: "text-center",
data: null,
render: function (data, type, row, column) {
console.log("hhh", data);
if (data.status == 2) {
return (
'"
);
} else {
if (data.project_description != null) {
return (
'"
);
} else {
return '';
}
}
},
},
{
className: "text-center",
data: null,
render: function (data, type, row, column) {
console.log("hhh", data);
if (data.status == 2) {
/////// i delete disabled milad
return 'ثبت ';
} else {
return 'ثبت ';
}
},
},
],
});
restrictInputOtherThanArabic($("#textshow"));
$.each(project_distance_check, function (key, value) {
if (key == 1) {
$("#noghte1").prop("checked", true);
}
if (key == 2) {
$("#checkbox2").prop("checked", true);
}
if (key == 3) {
$("#noghte3").prop("checked", true);
}
if (key == 4) {
$("#noghte4").prop("checked", true);
}
if (key == 5) {
$("#noghte5").prop("checked", true);
}
if (key == 6) {
$("#noghte6").prop("checked", true);
}
if (key == 7) {
$("#noghte7").prop("checked", true);
}
if (key == 8) {
$("#noghte8").prop("checked", true);
}
});
// end show table
});
$("#example-tool").on("click", "button.submittool", function () {
var objectedit = {};
if ($("#checkbox1").is(":checked")) {
objectedit[1] = ["1", "تعریض و روکش"];
}
if ($("#checkbox2").is(":checked")) {
objectedit[2] = ["1", "اصلاح قوس"];
}
if ($("#checkbox3").is(":checked")) {
objectedit[3] = ["1", "تراشه برداری"];
}
if ($("#checkbox4").is(":checked")) {
objectedit[4] = ["1", "روشنایی نقظه ای"];
}
if ($("#checkbox5").is(":checked")) {
objectedit[5] = ["1", "احداث تقاطع غیر هم سطح (پل/زیرگذر)"];
}
if ($("#checkbox6").is(":checked")) {
objectedit[6] = ["1", "ایمن سازی علائم و حفاظ"];
}
if ($("#checkbox7").is(":checked")) {
objectedit[7] = ["1", "اصلاح ورودی /خروجی"];
}
if ($("#checkbox8").is(":checked")) {
objectedit[8] = ["1", "تعریض ابنیه فنی"];
}
if ($("#textshow").val != "-") {
objectedit[9] = ["1", " سایر"];
}
console.log("objectedit", objectedit);
Object.size = function (obj) {
var size = 0,
key;
for (key in obj) {
if (obj.hasOwnProperty(key)) size++;
}
return size;
};
// Get the size of an object
var size = Object.size(objectedit);
console.log(size);
if (size != 0) {
var texterae = $("#textshow").val();
// console.log("objectedit", objectedit)
let formData = new FormData();
let project_distance = JSON.stringify(objectedit);
console.log("project_distance", project_distance);
formData.append("project-distance", project_distance);
formData.append("project-description", texterae);
for (var value of formData.values()) {
console.log(value);
}
showLoaderScreen();
$.ajax({
url: "https://rms.rmto.ir/rahdari/road-danger-prevention/" +
idkol +
"/edit-distance",
type: "POST",
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
},
data: formData,
cache: false,
contentType: false,
processData: false,
success: function (result) {
hideLoaderScreen();
// showLoaderScreen();
// $("#show-projecttool").modal("hide");
// ajaxcalltablefirst();
// ajaxcalltablefirsttool(idkol);
location.reload();
// Swal.fire({
// icon: "success",
// title: "با موفقیت بروزرسانی شد",
// confirmButtonText: "بستن",
// preConfirm: () => {
// }
// });
//todo yasiii
},
error: function (error) {
console.log(error);
Swal.fire({
icon: "error",
title: "خطا",
confirmButtonText: "بستن",
});
},
});
} else {
$(".acclabel1").css("color", "red");
$(".noghte1").css("color", "red");
$(".noghte2").css("color", "red");
$(".noghte3").css("color", "red");
$(".noghte4").css("color", "red");
$(".noghte5").css("color", "red");
$(".noghte6").css("color", "red");
$(".noghte7").css("color", "red");
$(".noghte8").css("color", "red");
}
// alert("hi")
});
$("#exampletool").on("click", "button.edittool", function () {
var tr = $(this).closest("tr");
var row = tablesecond.row(tr);
console.log(row.data());
objectshow = row.data();
if (objectshow[1] != undefined) {
$("#project-distance-input-1").val(objectshow[1]);
}
if (objectshow[2] != undefined) {
$("#project-distance-input-2").val(objectshow[2]);
}
if (objectshow[3] != undefined) {
$("#project-distance-input-3").val(objectshow[3]);
}
if (objectshow[4] != undefined) {
$("#project-distance-input-4").val(objectshow[4]);
}
if (objectshow[5] != undefined) {
$("#project-distance-input-5").val(objectshow[5]);
}
if (objectshow[6] != undefined) {
$("#project-distance-input-6").val(objectshow[6]);
}
if (objectshow[7] != undefined) {
$("#project-distance-input-7").val(objectshow[7]);
}
if (objectshow[8] != undefined) {
$("#project-distance-input-8").val(objectshow[8]);
}
if (objectshow[9] != undefined) {
$("#project-distance-input-9").val(objectshow[9]);
}
if (objectshow[10] != undefined) {
$("#project-distance-input-10").val(objectshow[10]);
}
if (objectshow[11] != undefined) {
$("#project-distance-input-11").val(objectshow[11]);
}
if (objectshow[12] != undefined) {
$("#project-distance-input-12").val(objectshow[12]);
}
if (objectshow[12] != undefined) {
$("#project-distance-input-13").val(objectshow[13]);
}
$("#show-projecttool").modal("show");
});
$("#submitoolfinal").on("click", function () {
var objectedit = {};
var project1 = $("#project-distance-input-1").val();
console.log(project1);
var project2 = $("#project-distance-input-2").val();
var project3 = $("#project-distance-input-3").val();
var project4 = $("#project-distance-input-4").val();
var project5 = $("#project-distance-input-5").val();
var project6 = $("#project-distance-input-6").val();
var project7 = $("#project-distance-input-7").val();
var project8 = $("#project-distance-input-8").val();
var project9 = $("#project-distance-input-9").val();
var project10 = $("#project-distance-input-10").val();
var project11 = $("#project-distance-input-11").val();
var project12 = $("#project-distance-input-12").val();
var project13 = $("#project-distance-input-13").val();
if (project1 !== "" && project1 !== "0") {
objectedit[1] = [project1];
}
if (project2 !== "" && project2 !== "0") {
objectedit[2] = [project2];
}
if (project3 !== "" && project3 !== "0") {
objectedit[3] = [project3];
}
if (project4 !== "" && project4 !== "0") {
objectedit[4] = [project4];
}
if (project5 !== "" && project5 !== "0") {
objectedit[5] = [project5];
}
if (project6 !== "" && project6 !== "0") {
objectedit[6] = [project6];
}
if (project7 !== "" && project7 !== "0") {
objectedit[7] = [project7];
}
if (project8 !== "" && project8 !== "0") {
objectedit[8] = [project8];
}
if (project9 !== "" && project9 !== "0") {
objectedit[9] = [project9];
}
if (project10 !== "" && project10 !== "0") {
objectedit[10] = [project10];
}
if (project11 !== "" && project11 !== "0") {
objectedit[11] = [project11];
}
if (project12 !== "" && project12 !== "0") {
objectedit[12] = [project12];
}
if (project13 !== "" && project13 !== "0") {
objectedit[13] = [project13];
}
console.log("objectedit", objectedit);
Object.size = function (obj) {
var size = 0,
key;
for (key in obj) {
if (obj.hasOwnProperty(key)) size++;
}
return size;
};
// Get the size of an object
var size = Object.size(objectedit);
console.log(size);
if (size != 0) {
// console.log("objectedit", objectedit)
let formData = new FormData();
let project_distance = JSON.stringify(objectedit);
formData.append("project-distance", project_distance);
Swal.fire({
icon: "warning",
title: "آیا برای ثبت نهایی مطمئن هستید؟",
showCancelButton: true,
confirmButtonColor: "#3085d6",
cancelButtonColor: "#d33",
confirmButtonText: "بله، تایید میشود",
cancelButtonText: "منصرف شدم!",
showLoaderOnConfirm: true,
preConfirm: () => {
showLoaderScreen();
$.ajax({
url: "https://rms.rmto.ir/rahdari/road-danger-prevention/" +
idkol +
"/edit-distance",
type: "POST",
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
},
data: formData,
cache: false,
contentType: false,
processData: false,
success: function (result) {
hideLoaderScreen();
// showLoaderScreen();
$("#show-projecttool").modal("hide");
// ajaxcalltablefirst();
ajaxcalltablefirsttool(idkol);
// Swal.fire({
// icon: "success",
// title: "با موفقیت بروزرسانی شد",
// confirmButtonText: "بستن",
// preConfirm: () => {
// // location.reload()
// }
// });
//todo yasiii
},
error: function (error) {
console.log(error);
Swal.fire({
icon: "error",
title: "خطا",
confirmButtonText: "بستن",
});
},
});
},
});
} else {
Swal.fire({
icon: "error",
title: "خطا",
text: "لطفا حداقل یکی از فیلدهای مرتبط را پر کنید.",
confirmButtonText: "بستن",
});
}
});
$("#example").on("click", "button.finalsubmit", function () {
var tr = $(this).closest("tr");
var row = table.row(tr);
idkol = row.data().id;
console.log(idkol);
Swal.fire({
icon: "warning",
title: "بعد از ثبت نهایی پروژه امکان ویرایش و حذف ندارید!",
showCancelButton: true,
confirmButtonColor: "#3085d6",
cancelButtonColor: "#d33",
confirmButtonText: "مطمئن هستم",
cancelButtonText: "منصرف شدم",
showLoaderOnConfirm: true,
preConfirm: () => {
showLoaderScreen();
$.ajax({
url: "https://rms.rmto.ir/rahdari/road-danger-prevention/" +
idkol +
"/submit",
type: "POST",
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
},
cache: false,
contentType: false,
processData: false,
success: function (result) {
// console.log(result.data.redirect+idkol)
//yasiu
hideLoaderScreen();
window.open(result.data.redirect);
location.reload();
// Swal.fire({
// icon: "success",
// title: "با موفقیت بروزرسانی شد",
// confirmButtonText: "بستن",
// preConfirm: () => {
// // window.open("/dashboarderoad/form%20upload/pages/rmshowon.html?uid=" + idkol);
// },
// });
},
error: function (error) {
console.log(error);
Swal.fire({
icon: "error",
title: "خطا",
confirmButtonText: "بستن",
});
},
});
},
});
});
$("#example").on("click", "button.deletsubmit", function () {
var tr = $(this).closest("tr");
var row = table.row(tr);
idkol = row.data().id;
// console.log(idkol)
Swal.fire({
icon: "warning",
title: "آیا برای حذف مطمئن هستید؟",
showCancelButton: true,
confirmButtonColor: "#3085d6",
cancelButtonColor: "#d33",
confirmButtonText: "بله، تایید میشود",
cancelButtonText: "منصرف شدم!",
showLoaderOnConfirm: true,
preConfirm: () => {
showLoaderScreen();
$.ajax({
url: "https://rms.rmto.ir/rahdari/road-danger-prevention/" +
idkol +
"/delete",
type: "POST",
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
},
cache: false,
contentType: false,
processData: false,
success: function (result) {
hideLoaderScreen();
table.ajax.reload(null, false);
// ajaxcalltablefirst();
// showLoaderScreen();
// Swal.fire({
// icon: "success",
// title: "با موفقیت حذف شد ",
// confirmButtonText: "بستن",
// preConfirm: () => {
// location.reload();
// },
// });
},
error: function (error) {
console.log(error);
Swal.fire({
icon: "error",
title: "خطا",
confirmButtonText: "بستن",
});
},
});
},
});
});
function getProvinces() {
let reqUrl = "https://rms.rmto.ir/public/contents/provinces";
// showLoaderScreen();
$.ajax({
url: reqUrl,
type: "GET",
success: function (result) {
hideLoaderScreen();
//console.log(result);
provinces = result.data;
},
error: function (error) {
// hideLoaderScreen();
//console.log(error);
},
});
}
function getTowns(id, num, val, defaultVal) {
let reqUrl = "https://rms.rmto.ir/public/contents/provinces/" + id;
showLoaderScreen();
$.ajax({
url: reqUrl,
type: "GET",
success: function (result) {
hideLoaderScreen();
console.log(result);
towns = result.data;
if (num == 1) {
setTownSelect("", val[0]);
} else if (num == 2) {
setTownSelect("", val[0]);
setTownSelect("1", val[1]);
} else {
setTownSelect("", val[0]);
setTownSelect("1", val[1]);
setTownSelect("2", val[2]);
}
if (!edit || !defaultVal) {
if (towns.length) {
let provinceIndex = provinces.findIndex(function (entry) {
return entry.id == towns[0].province_id;
});
if (provinceIndex != -1) {
// console.log(provinces[provinceIndex]);
map.flyTo(
[
provinces[provinceIndex].center_lat,
provinces[provinceIndex].center_long,
],
10
);
}
initialMarkerMapValue(
provinces[provinceIndex].center_lat,
provinces[provinceIndex].center_long
);
}
}
},
error: function (error) {
hideLoaderScreen();
//console.log(error);
},
complete: function () { },
});
}
function setTownSelect(box, selectedId) {
$("#town-id" + box).empty();
$("#town-id" + box).append('انتخاب شهرستان ');
for (let index = 0; index < towns.length; index++) {
if (selectedId == towns[index].id) {
$("#town-id" + box).append(
"\
" +
towns[index].name_fa +
" \
"
);
} else {
$("#town-id" + box).append(
"\
" +
towns[index].name_fa +
" \
"
);
}
}
}
$("#province-id").change(function () {
let boxNum = $("#subTown").children().length;
if ($(this).val() > 0) {
if (boxNum == 1) {
getTowns($(this).val(), 1, [0], false);
} else if (boxNum == 2) {
getTowns($(this).val(), 2, [0, 0], false);
} else {
getTowns($(this).val(), 3, [0, 0, 0], false);
}
} else {
if (boxNum == 1) {
$("#town-id").empty();
$("#town-id").append('انتخاب شهرستان ');
} else if (boxNum == 2) {
$("#town-id").empty();
$("#town-id").append('انتخاب شهرستان ');
$("#town-id1").empty();
$("#town-id1").append('انتخاب شهرستان ');
} else {
$("#town-id").empty();
$("#town-id").append('انتخاب شهرستان ');
$("#town-id1").empty();
$("#town-id1").append('انتخاب شهرستان ');
$("#town-id2").empty();
$("#town-id2").append('انتخاب شهرستان ');
}
}
});
$("#example").on("click", "button.details-control", function () {
edit = true;
var tr = $(this).closest("tr");
var row = table.row(tr);
idEdit = row.data().id;
startLatlng = row.data().start_latlng;
endLatlng = row.data().end_latlng;
$("#yearshown").val(row.data().contract_date);
if (map == null) {
setTimeout(() => {
createLeafletMap(startLatlng, endLatlng, 0);
}, 200);
} else {
initialMarkerMapValueEdit(startLatlng, endLatlng, 0);
}
showModal(row.data().id);
/////// milad edit comment
// if (row.data().status==2){
// // to do pitikooo
// $("#submitNewRow").attr("disabled", true);
// }
// else {
// $("#submitNewRow").attr("disabled", false);
// }
//////// end milad edit comment
$("#province-id").empty();
$("#province-id").append('انتخاب اداره کل ');
for (let index = 0; index < provinces.length; index++) {
$("#province-id").append(
"\
" +
provinces[index].name_fa +
" \
"
);
}
var provinceid = row.data().province_id;
var townMap = row.data().cities_id;
var townsArray = Object.keys(townMap);
var townsArrayValue = Object.values(townMap);
console.log("ramin", townsArrayValue);
if (townsArray.length == 1) {
getTowns(row.data().province_id, 1, [townsArray[0]], true);
} else if (townsArray.length == 2) {
$("#subTown div").append(
`
`
);
$("#subTown").append(``);
getTowns(row.data().province_id, 2, [townsArray[0], townsArray[1]], true);
$("#mosharekat1").val(townsArrayValue[0]);
$("#mosharekat2").val(townsArrayValue[1]);
} else if (townsArray.length == 3) {
$("#subTown div").append(
`
`
);
$("#subTown").append(``);
$("#subTown").append(``);
getTowns(
row.data().province_id,
3, [townsArray[0], townsArray[1], townsArray[2]],
true
);
$("#mosharekat1").val(townsArray[0]);
$("#mosharekat2").val(townsArray[1]);
$("#mosharekat3").val(townsArray[2]);
}
$("[data-mask]").inputmask();
var Roadaxis = row.data().axis_name;
var axisName_type = row.data().axis_type;
var ProjectTitle = row.data().project_name;
var contractorName_id = row.data().contractor_name;
var consultantName_id = row.data().consultant_name;
var contractName_date = row.data().contract_date;
var contractName_credit = row.data().contract_credit;
onLocationChange();
$("#stepModalmaintenance input[name=abrar-project-latlng-start]").val(
parseFloat(startLatlng[0]).toFixed(6) +
parseFloat(startLatlng[1]).toFixed(6)
);
$("#stepModalmaintenance input[name=abrar-project-latlng-end]").val(
parseFloat(endLatlng[0]).toFixed(6) + parseFloat(endLatlng[1]).toFixed(6)
);
// if (!isSetStartAbrarMarker) {
// startAbrarMarker.setLatLng(L.latLng(map.getCenter()));
// isSetStartAbrarMarker = true;
// $("#pin-marker-start")
// .removeClass("pin-move pin-warn")
// .addClass("pin-set");
// $("#stepModalmaintenance input[name=abrar-project-latlng-start]").val(
// startAbrarMarker.getLatLng().lat.toFixed(10) +
// startAbrarMarker.getLatLng().lng.toFixed(10)
// );
// $(
// "#stepModalmaintenance input[name=abrar-project-latlng-start]"
// ).removeClass("is-invalid-input");
// let markerLatLng = [
// startAbrarMarker.getLatLng().lat,
// startAbrarMarker.getLatLng().lng + 0.0008,
// ];
// map.setView(markerLatLng);
// endAbrarMarker.setLatLng(markerLatLng);
// endAbrarMarker.addTo(map);
// }
// new L.marker([parseFloat(startLatlng[0]).toFixed(10) , parseFloat(startLatlng[1]).toFixed(10) ], {
// icon: startAbrarDivIcon,
// draggable: true,
// }).addTo(map);
// startAbrarMarker.setLatLng([parseFloat(startLatlng[0]).toFixed(10) , parseFloat(startLatlng[1]).toFixed(10) ]);
// $("#pin-marker-start").addClass("pin-set");
// endAbrarMarker.setLatLng(parseFloat(endLatlng[0]).toFixed(10) , parseFloat(endLatlng[1]).toFixed(10) );
// $("#pin-marker-end").addClass("pin-set");
// isSetStartAbrarMarker = true;
// isSetEndAbrarMarker = true;
// checkMarkersAndDrawPath();
// isSetStartAbrarMarker = true;
// $("#pin-marker-start")
// .removeClass("pin-move pin-warn")
// .addClass("pin-set");
$("#province-id").val(provinceid);
$("#axis-name-id").val(Roadaxis);
$("#axis-type-id").val(axisName_type);
$("#project-title-id").val(ProjectTitle);
$("#contractor-id").val(contractorName_id);
$("#consultant-id").val(consultantName_id);
$("#contract-date-id").val(contractName_date);
$("#contract-price-id").val(contractName_credit);
});
//end
function showModal(id) {
$("#stepModalmaintenance").modal("show");
$("[data-mask]").inputmask();
$("#stepModalmaintenance input[name=abrar-project-latlng-start]").on(
"keyup",
function () {
console.log("he deals a card as a meditation :)");
checkStartMarkerValidation();
}
);
$("#stepModalmaintenance input[name=abrar-project-latlng-end]").on(
"keyup",
function () {
checkEndMarkerValidation();
}
);
function checkStartMarkerValidation(forSaveData = false, pageOnLoad = false) {
let reg = /^([0-9]){2}\.([0-9])+$/;
let startLatLngVal = $(
"#stepModalmaintenance input[name=abrar-project-latlng-start]"
)
.val()
.split(" - ");
let startLatLng = startLatLngVal.map(function (e) {
e = e.replace(/_/g, "");
return parseFloat(e.slice(1, -1));
});
// console.log(startLatLng);
if (isNaN(startLatLng[0])) {
if (!forSaveData) {
$(
"#stepModalmaintenance input[name=abrar-project-latlng-start]"
).removeClass("is-invalid-input");
} else {
$(
"#stepModalmaintenance input[name=abrar-project-latlng-start]"
).addClass("is-invalid-input");
}
$("#pin-marker-start").removeClass("pin-move pin-set");
$("#stepModalmaintenance input[name=abrar-project-latlng-start]").val("");
$("#stepModalmaintenance input[name=abrar-project-latlng-start]").attr(
"placeholder",
"(شروع) => (طول جغرافیایی) - (عرض جغرافیایی)"
);
return false;
} else if (!startLatLng == 2 ||
!reg.test(startLatLng[0]) ||
!reg.test(startLatLng[1])
) {
$(
"#stepModalmaintenance input[name=abrar-project-latlng-start]"
).addClass("is-invalid-input");
$("#pin-marker-start").removeClass("pin-move pin-set");
return false;
} else {
if (!forSaveData) {
$(
"#stepModalmaintenance input[name=abrar-project-latlng-start]"
).removeClass("is-invalid-input");
startAbrarMarker.setLatLng(startLatLng);
if (pageOnLoad) {
setTimeout(() => {
$("#pin-marker-start").removeClass("pin-move").addClass("pin-set");
startAbrarMarker.setLatLng(startLatLng);
}, 10);
} else {
$("#pin-marker-start").removeClass("pin-move").addClass("pin-set");
}
if (!isSetEndAbrarMarker) {
let markerLatLng = [
startAbrarMarker.getLatLng().lat,
startAbrarMarker.getLatLng().lng + 0.0008,
];
map.setView(markerLatLng);
endAbrarMarker.setLatLng(markerLatLng);
if (!isSetStartAbrarMarker) {
endAbrarMarker.addTo(map);
}
}
isSetStartAbrarMarker = true;
} else {
projectEditData["project-start-latlng"] = [
startAbrarMarker.getLatLng().lat.toFixed(6),
startAbrarMarker.getLatLng().lng.toFixed(6),
];
}
checkMarkersAndDrawPath(0);
return true;
}
}
function checkEndMarkerValidation(forSaveData = false, pageOnLoad = false) {
let reg = /^([0-9]){2}\.([0-9])+$/;
let endLatLngVal = $(
"#stepModalmaintenance input[name=abrar-project-latlng-end]"
)
.val()
.split(" - ");
let endLatLng = endLatLngVal.map(function (e) {
e = e.replace(/_/g, "");
return parseFloat(e.slice(1, -1));
});
if (isNaN(endLatLng[0])) {
if (!forSaveData) {
$(
"#stepModalmaintenance input[name=abrar-project-latlng-end]"
).removeClass("is-invalid-input");
} else {
$(
"#stepModalmaintenance input[name=abrar-project-latlng-end]"
).addClass("is-invalid-input");
}
$("#pin-marker-end").removeClass("pin-move pin-set");
$("#stepModalmaintenance input[name=abrar-project-latlng-end]").val("");
$("#stepModalmaintenance input[name=abrar-project-latlng-end]").attr(
"placeholder",
"(پایان) => (طول جغرافیایی) - (عرض جغرافیایی)"
);
return false;
} else if (!endLatLng == 2 ||
!reg.test(endLatLng[0]) ||
!reg.test(endLatLng[1])
) {
$("#stepModalmaintenance input[name=abrar-project-latlng-end]").addClass(
"is-invalid-input"
);
$("#pin-marker-end").removeClass("pin-move pin-set");
return false;
} else {
if (!forSaveData) {
$(
"#stepModalmaintenance input[name=abrar-project-latlng-end]"
).removeClass("is-invalid-input");
endAbrarMarker.setLatLng(endLatLng);
isSetEndAbrarMarker = true;
if (pageOnLoad) {
setTimeout(() => {
$("#pin-marker-end").removeClass("pin-move").addClass("pin-set");
endAbrarMarker.setLatLng(endLatLng);
}, 10);
} else {
$("#pin-marker-end").removeClass("pin-move").addClass("pin-set");
}
} else {
projectEditData["project-end-latlng"] = [
endAbrarMarker.getLatLng().lat.toFixed(6),
endAbrarMarker.getLatLng().lng.toFixed(6),
];
}
checkMarkersAndDrawPath(0);
return true;
}
}
$("#subTown").empty();
$("#subTown").append(`
شهرستان
انتخاب شهرستان
`);
$(".cancel").on("click", function () {
$("#stepModalmaintenance").modal("hide");
});
restrictInputOtherThanArabic($("#axis-name-id"));
restrictInputOtherThanArabic($("#project-title-id"));
restrictInputOtherThanArabic($("#contractor-id"));
restrictInputOtherThanArabic($("#consultant-id"));
$("#town-id").on("change", function () {
if (parseInt($(this).children("option:selected").val()) == 0) {
$("#town-id").addClass("is-invalid-input");
} else {
$("#town-id").removeClass("is-invalid-input");
}
});
}
$("#submitNewRow").on("click", function () {
let url = "https://rms.rmto.ir/rahdari/road-danger-prevention/create";
if (edit) {
url =
"https://rms.rmto.ir/rahdari/road-danger-prevention/" + idEdit + "/edit";
}
// First, get input values
const p2e = (s) => s.replace(/[۰-۹]/g, (d) => "۰۱۲۳۴۵۶۷۸۹".indexOf(d));
let startLatLngVal = $(
"#stepModalmaintenance input[name=abrar-project-latlng-start]"
)
.val()
.split(" - ");
let startLatLng = startLatLngVal.map(function (e) {
e = e.replace(/_/g, "");
return parseFloat(e.slice(1, -1));
});
let endLatLngVal = $(
"#stepModalmaintenance input[name=abrar-project-latlng-end]"
)
.val()
.split(" - ");
let endLatLng = endLatLngVal.map(function (e) {
e = e.replace(/_/g, "");
return parseFloat(e.slice(1, -1));
});
let provinceVal = $("#province-id").children("option:selected").val();
let axisNameVal = $("#axis-name-id").val();
let axisTypeVal = $("#axis-type-id").children("option:selected").val();
let town1Val = $("#town-id").children("option:selected").val();
let mosharekatTown1Val = $("#mosharekat1").val();
let town2Val = "";
let mosharekatTown2Val = "";
if ($("#town-id1").css("display") != "none") {
town2Val = $("#town-id1").children("option:selected").val();
mosharekatTown2Val = $("#mosharekat2").val();
}
let town3Val = "";
let mosharekatTown3Val = "";
if ($("#town-id2").css("display") != "none") {
town3Val = $("#town-id2").children("option:selected").val();
mosharekatTown3Val = $("#mosharekat3").val();
}
let projectTitleVal = $("#project-title-id").val();
let contractorNameVal = $("#contractor-id").val();
let consultantNameVal = $("#consultant-id").val();
let contractDateVal = $("#contract-date-id").val();
// console.log("contractDateVal", p2e(contractDateVal))
let contractPriceVal = $("#contract-price-id").val();
// Second, validate inputs
if (isNaN(startLatLng[0])) {
$("input[name='abrar-project-latlng-start']").addClass("is-invalid-input");
} else {
$("input[name='abrar-project-latlng-start']").removeClass(
"is-invalid-input"
);
}
if (parseInt(provinceVal) == 0) {
$("#province-id").addClass("is-invalid-input");
} else {
$("#province-id").removeClass("is-invalid-input");
}
if (axisNameVal == "") {
$("#axis-name-id").addClass("is-invalid-input");
} else {
$("#axis-name-id").removeClass("is-invalid-input");
}
if (parseInt(axisTypeVal) == 0) {
$("#axis-type-id").addClass("is-invalid-input");
} else {
$("#axis-type-id").removeClass("is-invalid-input");
}
// if (
// $("#yearshown").val().length < 4 ||
// $("#yearshown").val().slice(0, 1) == 0
// ) {
// $("#yearshown").addClass("is-invalid-input");
// } else {
// $("#yearshown").removeClass("is-invalid-input");
// }
if (parseInt(town1Val) == 0) {
$("#town-id").addClass("is-invalid-input");
} else {
$("#town-id").removeClass("is-invalid-input");
}
if (parseInt(town2Val) == 0) {
$("#town-id1").addClass("is-invalid-input");
} else {
$("#town-id1").removeClass("is-invalid-input");
}
if (parseInt(town3Val) == 0) {
$("#town-id2").addClass("is-invalid-input");
} else {
$("#town-id2").removeClass("is-invalid-input");
}
if ($("#town-id2").length) {
if (mosharekatTown1Val == "") {
$("#mosharekat1").addClass("is-invalid-input");
} else {
$("#mosharekat1").removeClass("is-invalid-input");
}
if (mosharekatTown2Val == "") {
$("#mosharekat2").addClass("is-invalid-input");
} else {
$("#mosharekat2").removeClass("is-invalid-input");
}
if (mosharekatTown3Val == "") {
$("#mosharekat3").addClass("is-invalid-input");
} else {
$("#mosharekat3").removeClass("is-invalid-input");
}
let mosharekatSum =
parseInt(mosharekatTown1Val) +
parseInt(mosharekatTown2Val) +
parseInt(mosharekatTown3Val);
if (mosharekatSum != 100) {
$("#mosharekat1").addClass("is-invalid-input");
$("#mosharekat2").addClass("is-invalid-input");
$("#mosharekat3").addClass("is-invalid-input");
if ($(".invalid-feedback").length) {
$(".invalid-feedback").show();
} else {
$("#mosharekat1").parent().append(`
مجموع درصد مشارکت ها باید 100 درصد باشد.
`);
$(".invalid-feedback").show();
}
} else {
if ($(".invalid-feedback").length) $(".invalid-feedback").hide();
}
} else if ($("#town-id1").length) {
if (mosharekatTown1Val == "") {
$("#mosharekat1").addClass("is-invalid-input");
} else {
$("#mosharekat1").removeClass("is-invalid-input");
}
if (mosharekatTown2Val == "") {
$("#mosharekat2").addClass("is-invalid-input");
} else {
$("#mosharekat2").removeClass("is-invalid-input");
}
let mosharekatSum =
parseInt(mosharekatTown1Val) + parseInt(mosharekatTown2Val);
if (mosharekatSum != 100) {
$("#mosharekat1").addClass("is-invalid-input");
$("#mosharekat2").addClass("is-invalid-input");
if ($(".invalid-feedback").length) {
$(".invalid-feedback").show();
} else {
$("#mosharekat1").parent().append(`
مجموع درصد مشارکت ها باید 100 درصد باشد.
`);
$(".invalid-feedback").show();
}
} else {
if ($(".invalid-feedback").length) $(".invalid-feedback").hide();
}
}
if (projectTitleVal == "") {
$("#project-title-id").addClass("is-invalid-input");
} else {
$("#project-title-id").removeClass("is-invalid-input");
}
if (contractorNameVal == "") {
$("#contractor-id").addClass("is-invalid-input");
} else {
$("#contractor-id").removeClass("is-invalid-input");
}
if (consultantNameVal == "") {
$("#consultant-id").addClass("is-invalid-input");
} else {
$("#consultant-id").removeClass("is-invalid-input");
}
if (contractDateVal == "") {
$("#contract-date-id").addClass("is-invalid-input");
} else {
$("#contract-date-id").removeClass("is-invalid-input");
}
if (contractPriceVal == "") {
$("#contract-price-id").addClass("is-invalid-input");
} else {
$("#contract-price-id").removeClass("is-invalid-input");
}
if ($("#town-id").val() === $("#town-id1").val()) {
$("#town-id1").addClass("is-invalid-input");
}
if ($("#town-id").val() === $("#town-id2").val()) {
$("#town-id2").addClass("is-invalid-input");
}
if ($("#town-id1").val() === $("#town-id2").val()) {
$("#town-id2").addClass("is-invalid-input");
}
if ($("#stepModalmaintenance").find(".is-invalid-input").length) {
// has error
// alert("لطفا تمامی فیلدهای مرتبط را تکمیل کنید.");
// Swal.fire({
// icon: "error",
// title: "خطا",
// text: "لطفا تمامی فیلدهای مرتبط را تکمیل کنید.",
// confirmButtonText: "بستن",
// });
} else if (boundingbox) {
if (
boundingbox &&
parseFloat(startLatLng[0]) >= parseFloat(boundingbox[0]) &&
parseFloat(startLatLng[0]) <= parseFloat(boundingbox[1]) &&
parseFloat(startLatLng[1]) >= parseFloat(boundingbox[2]) &&
parseFloat(startLatLng[1]) <= parseFloat(boundingbox[3])
// &&
// parseFloat(endLatLng[0]) >= parseFloat(boundingbox[0]) &&
// parseFloat(endLatLng[0]) <= parseFloat(boundingbox[1]) &&
// parseFloat(endLatLng[1]) >= parseFloat(boundingbox[2]) &&
// parseFloat(endLatLng[1]) <= parseFloat(boundingbox[3])
) {
console.log(startLatLng);
console.log(endLatLng);
console.log(boundingbox);
// ajax
let formData = new FormData();
let cities = {};
if ($("#town-id2").length) {
// console.log("We have three cities!");
cities[town1Val] = mosharekatTown1Val;
cities[town2Val] = mosharekatTown2Val;
cities[town3Val] = mosharekatTown3Val;
} else if ($("#town-id1").length) {
// console.log("We have 2 cities!");
cities[town1Val] = mosharekatTown1Val;
cities[town2Val] = mosharekatTown2Val;
} else {
// console.log("We have 1 city!");
cities[town1Val] = 100;
}
let contractDateMonth = contractDatePicker.getState().selected.month;
let contractDateDay = contractDatePicker.getState().selected.date;
let contractDateFormatted =
contractDatePicker.getState().selected.year +
"-" +
contractDateMonth +
"-" +
contractDateDay;
console.log(
" contractDatePicker.getState().selected",
contractDatePicker
);
console.log("contractDateFormatted", contractDateFormatted);
// console.log(cities);
formData.append("province-id", provinceVal);
formData.append("cities-id", JSON.stringify(cities));
formData.append("axis-name", axisNameVal);
formData.append("axis-type", axisTypeVal);
formData.append("project-name", projectTitleVal);
formData.append("contractor-name", contractorNameVal);
formData.append("consultant-name", consultantNameVal);
// formData.append("contract-date", p2e(contractDateVal));
formData.append("contract-date", $("#yearshown").children("option:selected").val());
formData.append("contract-credit", contractPriceVal);
formData.append("start-latlng", startLatLng);
formData.append("end-latlng", endLatLng);
// for (var value of formData.values()) {
// console.log(value);
// }
showLoaderScreen();
$.ajax({
url: url,
type: "POST",
data: formData,
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
},
cache: false,
contentType: false,
processData: false,
success: function (result) {
// console.log(result);
ajaxcalltable();
// setTimeout(function () {
// location.reload();
// }, 2000);
},
error: function (error) {
// console.log(error);
hideLoaderScreen();
Swal.fire({
icon: "error",
title: "خطا",
text: "خطایی رخ داده است",
confirmButtonText: "بستن",
});
},
});
} else {
Swal.fire({
icon: "error",
title: "خطا",
text: ". لطفا در محدوده استان موقعیت را ثبت کنید ",
confirmButtonText: "بستن",
});
}
} else {
console.log(startLatLng);
console.log(endLatLng);
console.log(boundingbox);
// ajax
let formData = new FormData();
let cities = {};
if ($("#town-id2").length) {
// console.log("We have three cities!");
cities[town1Val] = mosharekatTown1Val;
cities[town2Val] = mosharekatTown2Val;
cities[town3Val] = mosharekatTown3Val;
} else if ($("#town-id1").length) {
// console.log("We have 2 cities!");
cities[town1Val] = mosharekatTown1Val;
cities[town2Val] = mosharekatTown2Val;
} else {
// console.log("We have 1 city!");
cities[town1Val] = 100;
}
let contractDateMonth = contractDatePicker.getState().selected.month;
let contractDateDay = contractDatePicker.getState().selected.date;
let contractDateFormatted =
contractDatePicker.getState().selected.year +
"-" +
contractDateMonth +
"-" +
contractDateDay;
console.log(" contractDatePicker.getState().selected", contractDatePicker);
console.log("contractDateFormatted", contractDateFormatted);
// console.log(cities);
formData.append("province-id", provinceVal);
formData.append("cities-id", JSON.stringify(cities));
formData.append("axis-name", axisNameVal);
formData.append("axis-type", axisTypeVal);
formData.append("project-name", projectTitleVal);
formData.append("contractor-name", contractorNameVal);
formData.append("consultant-name", consultantNameVal);
// formData.append("contract-date", p2e(contractDateVal));
formData.append("contract-date", $("#yearshown").children("option:selected").val());
formData.append("contract-credit", contractPriceVal);
formData.append("start-latlng", startLatLng);
formData.append("end-latlng", endLatLng);
// for (var value of formData.values()) {
// console.log(value);
// }
showLoaderScreen();
$.ajax({
url: url,
type: "POST",
data: formData,
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
},
cache: false,
contentType: false,
processData: false,
success: function (result) {
// console.log(result);
ajaxcalltable();
// setTimeout(function () {
// location.reload();
// }, 2000);
},
error: function (error) {
// console.log(error);
hideLoaderScreen();
Swal.fire({
icon: "error",
title: "خطا",
text: "خطایی رخ داده است",
confirmButtonText: "بستن",
});
},
});
}
});
function ajaxcalltable() {
$.ajax({
url: "https://rms.rmto.ir/public/rahdari/road-danger-prevention/getlist",
type: "GET",
success: function (result) {
// console.log(result.data[0]);
$("#example").dataTable().fnClearTable();
$("#example").dataTable().fnAddData(result.data);
hideLoaderScreen();
// Swal.fire({
// icon: "success",
// title: "ثبت موفقیت آمیز",
// text: "اطلاعات اولیه با موفقیت ثبت گردید!",
// confirmButtonText: "بستن",
// });
$("#stepModalmaintenance").modal("hide");
},
});
}
function onLocationChange() {
let lat, lng;
let provinceId = $("#province-id").children("option:selected").val();
let provinceIndex = provinces.findIndex(function (entry) {
return entry.id == provinceId;
});
if (provinceIndex != -1) {
lat = provinces[provinceIndex].center_lat;
lng = provinces[provinceIndex].center_long;
}
$.ajax({
url: "https://testmap.141.ir/nominatim/reverse.php?format=json" +
"&lat=" +
lat +
"&lon=" +
lng +
"&accept-language=fa" +
"&zoom=5",
type: "GET",
success: function (result) {
boundingbox = result.boundingbox;
console.log("heeeeeey kaaaaargarrrrr");
console.log(boundingbox);
},
error: function (error) {
console.log(error);
},
});
}
$("#province-id").on("change", function () {
if (parseInt($(this).children("option:selected").val()) == 0) {
$("#province-id").addClass("is-invalid-input");
} else {
$("#province-id").removeClass("is-invalid-input");
onLocationChange();
}
});
$("#axis-name-id").on("change", function () {
if ($(this).val() == "") {
$("#axis-name-id").addClass("is-invalid-input");
} else {
$("#axis-name-id").removeClass("is-invalid-input");
}
});
$("#axis-type-id").on("change", function () {
if (parseInt($(this).children("option:selected").val()) == 0) {
$("#axis-type-id").addClass("is-invalid-input");
} else {
$("#axis-type-id").removeClass("is-invalid-input");
}
});
$("#yearshown").on("change", function () {
// if (parseInt($(this).children("option:selected").val()) == 0) {
// $("#yearshown").addClass("is-invalid-input");
// } else {
$("#yearshown").removeClass("is-invalid-input");
// }
});
$("#project-title-id").on("change", function () {
if ($(this).val() == "") {
$("#project-title-id").addClass("is-invalid-input");
} else {
$("#project-title-id").removeClass("is-invalid-input");
}
});
$("#contractor-id").on("change", function () {
if ($(this).val() == "") {
$("#contractor-id").addClass("is-invalid-input");
} else {
$("#contractor-id").removeClass("is-invalid-input");
}
});
$("#consultant-id").on("change", function () {
if ($(this).val() == "") {
$("#consultant-id").addClass("is-invalid-input");
} else {
$("#consultant-id").removeClass("is-invalid-input");
}
});
$("#contract-price-id").on("change", function () {
if ($(this).val() == "") {
$("#contract-price-id").addClass("is-invalid-input");
} else {
$("#contract-price-id").removeClass("is-invalid-input");
}
});
function restrictInputOtherThanArabic($field) {
// Arabic characters fall in the Unicode range 0600 - 06FF
var arabicCharUnicodeRange = /[\u0600-\u06FF-0-9-45]/;
$field.bind("keypress", function (event) {
var key = event.which;
// 0 = numpad
// 8 = backspace
// 32 = space
if (key == 8 || key == 0 || key === 32) {
return true;
}
var str = String.fromCharCode(key);
if (arabicCharUnicodeRange.test(str)) {
return true;
}
return false;
});
}
function addTownBox() {
let childNum = $("#subTown").children().length;
// console.log($("#town-id").val());
if (childNum == 1 && $("#town-id").val() != 0) {
$("#subTown div").append(
`
`
);
$("#subTown").append(``);
setTownSelect(childNum);
} else if (childNum == 2 && $("#town-id1").val() != 0) {
$("#subTown").append(``);
setTownSelect(childNum);
}
$("[data-mask]").inputmask();
$("#town-id1").on("change", function () {
if (parseInt($(this).children("option:selected").val()) == 0) {
$("#town-id1").addClass("is-invalid-input");
} else {
$("#town-id1").removeClass("is-invalid-input");
}
});
$("#town-id2").on("change", function () {
if (parseInt($(this).children("option:selected").val()) == 0) {
$("#town-id2").addClass("is-invalid-input");
} else {
$("#town-id2").removeClass("is-invalid-input");
}
});
$("#mosharekat1").on("change", function () {
if ($(this).val() == "") {
$("#mosharekat1").addClass("is-invalid-input");
} else {
$("#mosharekat1").removeClass("is-invalid-input");
}
});
$("#mosharekat2").on("change", function () {
if ($(this).val() == "") {
$("#mosharekat2").addClass("is-invalid-input");
} else {
$("#mosharekat2").removeClass("is-invalid-input");
}
});
$("#mosharekat3").on("change", function () {
if ($(this).val() == "") {
$("#mosharekat3").addClass("is-invalid-input");
} else {
$("#mosharekat3").removeClass("is-invalid-input");
}
});
}
function removeTownBox() {
let childNum = $("#subTown").children().length;
if (childNum == 3) {
$("#town-id2").parent().remove();
} else if (childNum == 2) {
$("#town-id1").parent().remove();
$("#subTown .input-group").remove();
}
}
function checkMarkersAndDrawPath(update) {
if (
$("#pin-marker-start").hasClass("pin-set") &&
!$("#pin-marker-start").hasClass("pin-move") &&
$("#pin-marker-end").hasClass("pin-set") &&
!$("#pin-marker-end").hasClass("pin-move")
) {
drawPath(update);
} else {
setTimeout(() => {
if (
$("#pin-marker-start").hasClass("pin-set") &&
!$("#pin-marker-start").hasClass("pin-move") &&
$("#pin-marker-end").hasClass("pin-set") &&
!$("#pin-marker-end").hasClass("pin-move")
) {
drawPath(update);
} else {
if (routeControls.length) {
$(routeControls).each(function (index, control) {
mapName = update ? map2 : map;
mapName.removeControl(control);
routeControls.splice(routeControls.indexOf(index), 1);
});
}
// if (polyline != null) {
// map.removeLayer(polyline);
// }
}
}, 20);
}
}
function checkMarkersAndDrawPathshow() {
if (
$("#pin-marker-start").hasClass("pin-set") &&
!$("#pin-marker-start").hasClass("pin-move") &&
$("#pin-marker-end").hasClass("pin-set") &&
!$("#pin-marker-end").hasClass("pin-move")
) {
drawPathshow();
} else {
setTimeout(() => {
if (
$("#pin-marker-start").hasClass("pin-set") &&
!$("#pin-marker-start").hasClass("pin-move") &&
$("#pin-marker-end").hasClass("pin-set") &&
!$("#pin-marker-end").hasClass("pin-move")
) {
drawPathshow();
} else {
if (routeControls.length) {
$(routeControls).each(function (index, control) {
mapshow.removeControl(control);
routeControls.splice(routeControls.indexOf(index), 1);
});
}
// if (polyline != null) {
// map.removeLayer(polyline);
// }
}
}, 20);
}
}
function removeStartToEndPath(update) {
if (routeControls.length) {
$(routeControls).each(function (index, control) {
mapName = update ? map2 : map;
mapName.removeControl(control);
routeControls.splice(routeControls.indexOf(index), 1);
});
}
}
// function drawStartToEndPath(pathType, source, dest) {
// if (routeControlsPath.length) {
// $(routeControlsPath).each(function (index, control) {
// map.removeControl(control);
// routeControlsPath.splice(routeControlsPath.indexOf(index), 1);
// });
// }
// if (polylinePath != null) {
// map.removeLayer(polylinePath);
// }
// switch (pathType) {
// case "line": {
// polylinePath = L.polyline(
// [
// [source[0], source[1]],
// [dest[0], dest[1]],
// ],
// {
// color: "#0073e6",
// opacity: 0.6,
// weight: 5,
// }
// ).addTo(map);
// break;
// }
// case "axis": {
// $.get(
// `https://testmap.141.ir/route/v1/driving/${source[1]},${source[0]};${dest[1]},${dest[0]}?overview=false&alternatives=true&steps=true`,
// function (data) {
// routeControlsPath.push(
// L.Routing.control({
// waypoints: [
// L.latLng(parseFloat(source[0]), parseFloat(source[1])),
// L.latLng(parseFloat(dest[0]), parseFloat(dest[1])),
// ],
// fitSelectedRoutes: false,
// draggableWaypoints: true,
// createMarker: function () {
// return null;
// },
// lineOptions: {
// addWaypoints: false,
// styles: [
// {
// color: "#0073e6",
// opacity: 0.6,
// weight: 5,
// },
// ],
// },
// })
// .on("routesfound", function (e) {
// for (let index = 0; index < popupArraysPath.length; index++) {
// if (popupArraysPath[index] !== null) {
// map.removeLayer(popupArraysPath[index]);
// }
// }
// /*let popup = new L.Popup({
// 'maxWidth': '300',
// 'maxHeight': '150',
// 'className': 'customRouteEstimate'
// });
// let popupLocation = new L.LatLng(e.routes[0].coordinates[parseInt(e.routes[0]
// .coordinates
// .length /
// 2)].lat,
// e.routes[0].coordinates[parseInt(e.routes[0].coordinates.length / 2)]
// .lng);
// let popupContent = "مسافت : " + parseFloat(e.routes[0].summary.totalDistance / 1000.0).toFixed(2) + " کیلومتر";
// popup.setLatLng(popupLocation);
// popup.setContent(popupContent);
// popupArraysPath.push(popup);
// map.addLayer(popup);*/
// })
// .addTo(map)
// );
// }
// );
// $(".leaflet-control-container").css("display", "none");
// $(".leaflet-routing-container-hide").css("display", "none");
// break;
// }
// }
// }
function drawPath(update) {
mapName = update ? map2 : map;
if (routeControls.length) {
$(routeControls).each(function (index, control) {
mapName.removeControl(control);
routeControls.splice(routeControls.indexOf(index), 1);
});
}
// routeControls.push(
// L.polyline(
// [
// L.latLng(
// parseFloat(startAbrarMarker.getLatLng().lat),
// parseFloat(startAbrarMarker.getLatLng().lng)
// ),
// L.latLng(
// parseFloat(endAbrarMarker.getLatLng().lat),
// parseFloat(endAbrarMarker.getLatLng().lng)
// ),
// ],
// {
// color: "blue",
// weight: 3,
// opacity: 0.5,
// smoothFactor: 1,
// }
// )
// );
// map.addLayer(routeControls[0]);
routeControls.push(
L.Routing.control({
waypoints: [
L.latLng(
parseFloat(startAbrarMarker.getLatLng().lat),
parseFloat(startAbrarMarker.getLatLng().lng)
),
L.latLng(
parseFloat(endAbrarMarker.getLatLng().lat),
parseFloat(endAbrarMarker.getLatLng().lng)
),
],
fitSelectedRoutes: false,
draggableWaypoints: true,
createMarker: function () {
return null;
},
lineOptions: {
addWaypoints: false,
styles: [{
color: "#28a745",
opacity: 0.8,
weight: 5,
},],
},
})
// .on("routesfound", function (e) {
// var divideBy = 2;
// for (let index = 0; index < popupArrays.length; index++) {
// map.removeLayer(popupArrays[index]);
// }
// var customOptions = {
// maxWidth: "300",
// maxHeight: "150",
// className: "customRouteEstimate",
// };
// var popup = new L.Popup(customOptions);
// var popupLocation = new L.LatLng(
// e.routes[0].coordinates[
// parseInt(e.routes[0].coordinates.length / divideBy)
// ].lat,
// e.routes[0].coordinates[
// parseInt(e.routes[0].coordinates.length / divideBy)
// ].lng
// );
// var popupContent =
// 'مسافت: ' +
// parseFloat(e.routes[0].summary.totalDistance / 1000.0).toFixed(2) +
// " کیلومتر";
// saveTotalDistance = parseFloat(
// parseFloat(e.routes[0].summary.totalDistance / 1000.0).toFixed(2)
// );
// popup.setLatLng(popupLocation);
// popup.setContent(popupContent);
// popupArrays.push(popup);
// map.addLayer(popup);
// // showItemSelectionModal();
// })
.addTo(mapName)
);
$(".leaflet-control-container").css("display", "none");
$(".leaflet-routing-container-hide").css("display", "none");
}
function drawPathshow() {
if (routeControls.length) {
$(routeControls).each(function (index, control) {
mapshow.removeControl(control);
routeControls.splice(routeControls.indexOf(index), 1);
});
}
// routeControls.push(
// L.polyline(
// [
// L.latLng(
// parseFloat(startAbrarMarker.getLatLng().lat),
// parseFloat(startAbrarMarker.getLatLng().lng)
// ),
// L.latLng(
// parseFloat(endAbrarMarker.getLatLng().lat),
// parseFloat(endAbrarMarker.getLatLng().lng)
// ),
// ],
// {
// color: "blue",
// weight: 3,
// opacity: 0.5,
// smoothFactor: 1,
// }
// )
// );
// map.addLayer(routeControls[0]);
routeControls.push(
L.Routing.control({
waypoints: [
L.latLng(
parseFloat(startAbrarMarkershow.getLatLng().lat),
parseFloat(startAbrarMarkershow.getLatLng().lng)
),
L.latLng(
parseFloat(endAbrarMarkershow.getLatLng().lat),
parseFloat(endAbrarMarkershow.getLatLng().lng)
),
],
fitSelectedRoutes: false,
draggableWaypoints: true,
createMarker: function () {
return null;
},
lineOptions: {
addWaypoints: false,
styles: [{
color: "#28a745",
opacity: 0.8,
weight: 5,
},],
},
})
// .on("routesfound", function (e) {
// var divideBy = 2;
// for (let index = 0; index < popupArrays.length; index++) {
// map.removeLayer(popupArrays[index]);
// }
// var customOptions = {
// maxWidth: "300",
// maxHeight: "150",
// className: "customRouteEstimate",
// };
// var popup = new L.Popup(customOptions);
// var popupLocation = new L.LatLng(
// e.routes[0].coordinates[
// parseInt(e.routes[0].coordinates.length / divideBy)
// ].lat,
// e.routes[0].coordinates[
// parseInt(e.routes[0].coordinates.length / divideBy)
// ].lng
// );
// var popupContent =
// 'مسافت: ' +
// parseFloat(e.routes[0].summary.totalDistance / 1000.0).toFixed(2) +
// " کیلومتر";
// saveTotalDistance = parseFloat(
// parseFloat(e.routes[0].summary.totalDistance / 1000.0).toFixed(2)
// );
// popup.setLatLng(popupLocation);
// popup.setContent(popupContent);
// popupArrays.push(popup);
// map.addLayer(popup);
// // showItemSelectionModal();
// })
.addTo(mapshow)
);
$(".leaflet-control-container").css("display", "none");
$(".leaflet-routing-container-hide").css("display", "none");
}
$("#rejectoolfinal").on("click", function () {
$("#show-projecttool").modal("hide");
});
$("#example").on("click", "button.update-button", function () {
$(".body-table-style").css("margin-bottom", "50px");
$(".container-fluid").css("margin-bottom", "100px");
$("#tool-main").css("display", "none");
$("#tool-ehdas").css("display", "none");
$("#update-table").css("display", "block");
scrolldowntable();
$("#title-update").empty();
var tr = $(this).closest("tr");
var row = table.row(tr);
console.log(row.data().id);
idkol = row.data().id;
var projecttitle = row.data().project_name;
var axisname = row.data().axis_name;
var ostan = row.data().province_fa;
startLatlng = row.data().start_latlng;
endLatlng = row.data().end_latlng;
var titleupdate =
"بروزرسانی آخرین وضعیت پروژه" +
" " +
projecttitle +
" " +
"محور" +
" " +
axisname +
" " +
"استان" +
" " +
ostan;
var note = '' + titleupdate + " ";
$("#title-update").append(note);
// showLoaderScreen();
tablethird = $("#example-update").DataTable({
dom: "lfrtip",
scrollX: true,
destroy: true,
pagingType: "simple_numbers",
language: {
sEmptyTable: "هیچ دادهای در جدول وجود ندارد",
sInfo: "نمایش _START_ تا _END_ از _TOTAL_ ردیف",
sInfoEmpty: "نمایش 0 تا 0 از 0 ردیف",
sInfoFiltered: "(فیلتر شده از _MAX_ ردیف)",
sInfoPostFix: "",
sInfoThousands: ",",
sLengthMenu: "نمایش _MENU_ ردیف",
sLoadingRecords: "در حال بارگزاری...",
sProcessing: "در حال پردازش...",
sSearch: "جستجو: ",
sZeroRecords: "رکوردی با این مشخصات پیدا نشد",
oPaginate: {
sFirst: "برگهی نخست",
sLast: "برگهی آخر",
sNext: "بعدی",
sPrevious: "قبلی",
},
oAria: {
sSortAscending: ": فعال سازی نمایش به صورت صعودی",
sSortDescending: ": فعال سازی نمایش به صورت نزولی",
},
},
order: [
[0, "desc"]
],
processing: true,
ajax: {
url: "https://rms.rmto.ir/rahdari/road-danger-prevention/" +
idkol +
"/get-distance-update-list",
type: "GET",
dataSrc: function (json) {
console.log(json);
tooltipjson = json.data.distance;
if (json.data.distance_update.length) {
projectDistanceLastUpdate =
json.data.distance_update[json.data.distance_update.length - 1];
projectDistanceLastUpdatestatus =
projectDistanceLastUpdate.previous_status;
if (projectDistanceLastUpdatestatus == 0) {
$("#add-project-update").attr("disabled", true);
} else {
$("#add-project-update").attr("disabled", false);
}
console.log(
"projectDistanceLastUpdate",
projectDistanceLastUpdate.previous_status
);
} else {
projectDistanceLastUpdate = null;
projectDefaultDistances = json.data.distance;
}
hideLoaderScreen();
return json.data.distance_update;
},
},
columns: [{
data: null,
render: function (data, type, row, meta) {
return meta.row + 1;
},
},
{ data: "updated_at" },
{
data: "previous_project_distance_update",
render: function (data, type, row, column) {
// console.log("data", data[Object.keys(data)[1]][0])
let keyIndex = Object.keys(data).findIndex(function (entry) {
return entry == 1;
});
console.log("keyIndex", keyIndex);
if (keyIndex == -1) {
return "-";
} else {
console.log(Object.keys(data)[keyIndex]);
console.log(data[Object.keys(data)[keyIndex]][0]);
return data[Object.keys(data)[keyIndex]][0];
}
},
},
{
data: "previous_project_distance_update",
render: function (data, type, row, column) {
let keyIndex = Object.keys(data).findIndex(function (entry) {
return entry == 2;
});
if (keyIndex == -1) {
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
// console.log(data[Object.keys(data)[keyIndex]][0]);
return data[Object.keys(data)[keyIndex]][0];
}
},
},
{
data: "previous_project_distance_update",
render: function (data, type, row, column) {
let keyIndex = Object.keys(data).findIndex(function (entry) {
return entry == 3;
});
if (keyIndex == -1) {
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
// console.log(data[Object.keys(data)[keyIndex]][0]);
return data[Object.keys(data)[keyIndex]][0];
}
},
},
{
data: "previous_project_distance_update",
render: function (data, type, row, column) {
let keyIndex = Object.keys(data).findIndex(function (entry) {
return entry == 4;
});
if (keyIndex == -1) {
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
// console.log(data[Object.keys(data)[keyIndex]][0]);
return data[Object.keys(data)[keyIndex]][0];
}
},
},
{
data: "previous_project_distance_update",
render: function (data, type, row, column) {
let keyIndex = Object.keys(data).findIndex(function (entry) {
return entry == 5;
});
if (keyIndex == -1) {
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
// console.log(data[Object.keys(data)[keyIndex]][0]);
return data[Object.keys(data)[keyIndex]][0];
}
},
},
{
data: "previous_project_distance_update",
render: function (data, type, row, column) {
let keyIndex = Object.keys(data).findIndex(function (entry) {
return entry == 6;
});
if (keyIndex == -1) {
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
// console.log(data[Object.keys(data)[keyIndex]][0]);
return data[Object.keys(data)[keyIndex]][0];
}
},
},
{
data: "previous_project_distance_update",
render: function (data, type, row, column) {
let keyIndex = Object.keys(data).findIndex(function (entry) {
return entry == 7;
});
if (keyIndex == -1) {
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
// console.log(data[Object.keys(data)[keyIndex]][0]);
return data[Object.keys(data)[keyIndex]][0];
}
},
},
{
data: "previous_project_distance_update",
render: function (data, type, row, column) {
let keyIndex = Object.keys(data).findIndex(function (entry) {
return entry == 8;
});
if (keyIndex == -1) {
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
// console.log(data[Object.keys(data)[keyIndex]][0]);
return data[Object.keys(data)[keyIndex]][0];
}
},
},
{
data: "previous_project_distance_update",
render: function (data, type, row, column) {
let keyIndex = Object.keys(data).findIndex(function (entry) {
return entry == 9;
});
if (keyIndex == -1) {
return "-";
} else {
// console.log(Object.keys(data)[keyIndex]);
// console.log(data[Object.keys(data)[keyIndex]][0]);
return data[Object.keys(data)[keyIndex]][0];
}
},
},
{
data: "previous_project_status",
render: function (data, type, row) {
if (data == 1) {
return " در دست برنامه ریزی اولیه";
} else if (data == 2) {
return " در دست مطالعه و تهیه اسناد مناقصه";
} else if (data == 3) {
return "در دست مناقصه";
} else if (data == 4) {
return "در حال تجهیز کارگاه";
} else if (data == 5) {
return " در حال اجرا/فعال";
} else if (data == 6) {
return "در حال اجرا/متوقف ";
} else if (data == 7) {
return " در حال آماده سازی برای افتتاح";
} else if (data == 8) {
return " تکمیل و خاتمه یافته و بهره برداری شده";
} else return "توسط استان بروز رسانی نشده است";
},
},
{
data: null,
render: function (data, type, row, meta) {
let buttons = "";
buttons = ``;
// buttons = ` `
// if (data.previous_status == 0) {
// if (data.images.length) {
// sliderImages = data.images;
buttons =
`
`;
return buttons;
},
},
],
});
});
$("#image-upload-modal").on("click", "button.submit-update", function () {
console.log("history", historyId);
Swal.fire({
icon: "warning",
title: "آیا برای ثبت مطمئن هستید؟",
showCancelButton: true,
confirmButtonColor: "#3085d6",
cancelButtonColor: "#d33",
confirmButtonText: "بله، تایید میشود",
cancelButtonText: "منصرف شدم!",
showLoaderOnConfirm: true,
preConfirm: () => {
showLoaderScreen();
$.ajax({
url: "https://rms.rmto.ir/rahdari/road-danger-prevention/" +
historyId +
"/submit-history",
type: "POST",
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
},
cache: false,
contentType: false,
processData: false,
success: function (result) {
location.reload();
ajaxcalltablethird2(idkol);
},
error: function (error) {
hideLoaderScreen();
alert("خطا :(");
},
});
},
});
});
$("#example-update").on("click", "button.upload-image-button", function () {
var tr = $(this).closest("tr");
var row = tablethird.row(tr);
var updateDate = row.data().updated_at;
if (updateDate == "-") {
console.log("this situation 1");
prepareImageModal();
historyId = row.data().id;
$("#image-upload-modal").modal({
backdrop: "static",
keyboard: false,
});
$("#image-upload-modal").modal("show");
} else {
console.log("this situation 2");
openSlidershowbutton(row, 0);
}
});
$("#example-update").on(
"click",
"button.upload-image-buttonslider",
function () {
var tr = $(this).closest("tr");
openSlider(tr);
var row = tablethird.row(tr);
historyId = row.data().id;
}
);
function readURL1(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$("#image_upload_first").css("display", "block");
$("#image_upload_first").attr("src", e.target.result);
uploadUpdateImage(1, input);
};
reader.readAsDataURL(input.files[0]);
}
}
function readURL2(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$("#image_upload_second").css("display", "block");
$("#image_upload_second").attr("src", e.target.result);
uploadUpdateImage(2, input);
};
reader.readAsDataURL(input.files[0]);
}
}
function readURL3(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$("#image_upload_third").css("display", "block");
$("#image_upload_third").attr("src", e.target.result);
uploadUpdateImage(3, input);
};
reader.readAsDataURL(input.files[0]);
}
}
function readURL4(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$("#image_upload_fourth").css("display", "block");
$("#image_upload_fourth").attr("src", e.target.result);
uploadUpdateImage(4, input);
};
reader.readAsDataURL(input.files[0]);
}
}
function readURL5(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$("#image_upload_fifth").css("display", "block");
$("#image_upload_fifth").attr("src", e.target.result);
uploadUpdateImage(5, input);
};
reader.readAsDataURL(input.files[0]);
}
}
function readURL6(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$("#image_upload_six").css("display", "block");
$("#image_upload_six").attr("src", e.target.result);
uploadUpdateImage(6, input);
};
reader.readAsDataURL(input.files[0]);
}
}
function readURL7(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$("#image_upload_seven").css("display", "block");
$("#image_upload_seven").attr("src", e.target.result);
uploadUpdateImage(7, input);
};
reader.readAsDataURL(input.files[0]);
}
}
function readURL8(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$("#image_upload_eight").css("display", "block");
$("#image_upload_eight").attr("src", e.target.result);
uploadUpdateImage(8, input);
};
reader.readAsDataURL(input.files[0]);
}
}
function removeImage(index) {
console.log("index", index);
let formData = new FormData();
formData.append("history-id", historyId);
formData.append("name", "image-" + index);
for (var value of formData.values()) {
console.log("valll", value);
}
Swal.fire({
icon: "warning",
title: "آیا برای ثبت مطمئن هستید؟",
showCancelButton: true,
confirmButtonColor: "#3085d6",
cancelButtonColor: "#d33",
confirmButtonText: "بله، تایید میشود",
cancelButtonText: "منصرف شدم!",
showLoaderOnConfirm: true,
preConfirm: () => {
// showLoaderScreen()
$.ajax({
url: `https://rms.rmto.ir/rahdari/road-danger-prevention/history-images/delete-image`,
type: "POST",
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
},
data: formData,
cache: false,
contentType: false,
processData: false,
success: function (result) {
console.log(result);
$("#image-upload-modal").modal("hide");
ajaxcalltablethird2(idkol);
},
error: function (error) {
console.log(error);
Swal.fire({
icon: "error",
title: "خطا",
confirmButtonText: "بستن",
});
},
});
},
});
}
function uploadUpdateImage(index, input) {
let formData = new FormData();
formData.append("history-id", historyId); //pitikoooooooooo
formData.append("image", input.files[0]);
formData.append("name", "image-" + index);
for (var value of formData.values()) {
console.log(value);
}
showLoaderScreen();
$.ajax({
url: `https://rms.rmto.ir/rahdari/road-danger-prevention/history-images/upload`,
type: "POST",
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
},
data: formData,
cache: false,
contentType: false,
processData: false,
success: function (result) {
hideLoaderScreen();
// $("#image-upload-modal").modal("hide");
console.log(result);
ajaxcalltablethird3(idkol);
},
error: function (error) {
console.log(error);
hideLoaderScreen();
// alert("خطا در آپلود تصویر :(");
},
});
}
$("#add-project-update").on("click", function () {
$("#stop-reason-text-div").css("display", "none");
$("#pin-marker-progress").removeClass("pin-warn pin-set");
console.log("projectDistanceLastUpdate", projectDistanceLastUpdate);
var kilofirst;
$("#project_last_status").removeClass("is-invalid");
$("#alertshowprogress1").css("color", "black");
$("#alertshowprogress1").empty();
$("#alertshowprogress1").append("درصد پیشرفت فیزیکی");
$("#alertshowprogress2").css("color", "black");
$("#alertshowprogress2").empty();
$("#alertshowprogress2").append("درصد پیشرفت فیزیکی");
$("#alertshowprogress3").css("color", "black");
$("#alertshowprogress3").empty();
$("#alertshowprogress3").append("درصد پیشرفت فیزیکی");
$("#alertshowprogress4").css("color", "black");
$("#alertshowprogress4").empty();
$("#alertshowprogress4").append("درصد پیشرفت فیزیکی");
$("#alertshowprogress5").css("color", "black");
$("#alertshowprogress5").empty();
$("#alertshowprogress5").append("درصد پیشرفت فیزیکی");
$("#alertshowprogress6").css("color", "black");
$("#alertshowprogress6").empty();
$("#alertshowprogress6").append("درصد پیشرفت فیزیکی");
$("#alertshowprogress7").css("color", "black");
$("#alertshowprogress7").empty();
$("#alertshowprogress7").append("درصد پیشرفت فیزیکی");
$("#alertshowprogress8").css("color", "black");
$("#alertshowprogress8").empty();
$("#alertshowprogress8").append("درصد پیشرفت فیزیکی");
$("#alertshowprogress9").css("color", "black");
$("#alertshowprogress9").empty();
$("#alertshowprogress9").append("درصد پیشرفت فیزیکی");
for (let index = 1; index <= 12; index++) {
if ($("#item" + index).css("display") != "none") {
$("#project-distance-input-" + index + "-2").removeClass("is-invalid");
}
}
console.log("projectDistanceLastUpdateyasi", projectDistanceLastUpdate);
edit = true;
if (map2 == null) {
console.log("my name is 11111111");
setTimeout(() => {
createLeafletMap(startLatlng, endLatlng, 1);
}, 200);
} else {
console.log("my name is 222222222");
initialMarkerMapValueEdit(startLatlng, endLatlng, 1);
}
console.log("projectDistanceLastUpdatepitiko", projectDistanceLastUpdate)
// console.log("distanceIndex", distanceIndex)
if (projectDistanceLastUpdate != null) {
for (let index = 1; index <= 9; index++) {
let distanceIndex = Object.keys(
projectDistanceLastUpdate.previous_project_distance_update
).findIndex(function (entry) {
return entry == index;
});
console.log("ditanceindexxxxx", distanceIndex)
// console.log(index + " -> " + distanceIndex);
if (distanceIndex == -1) {
$("#item" + index).hide();
$("#item" + index + "-data").hide();
} else {
switch (index) {
case 1:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
min1 =
projectDistanceLastUpdate.previous_project_distance_update[
Object.keys(
projectDistanceLastUpdate.previous_project_distance_update
)[distanceIndex]
][0];
projectProgressPercentage1 = $(
"#project-progress-percentage1"
).slider({
min: 0,
max: 100,
value: min1,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
case 2:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
min2 =
projectDistanceLastUpdate.previous_project_distance_update[
Object.keys(
projectDistanceLastUpdate.previous_project_distance_update
)[distanceIndex]
][0];
projectProgressPercentage2 = $(
"#project-progress-percentage2"
).slider({
min: 0,
max: 100,
value: min2,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
case 3:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
// console.log("kilofirsttetsttttttttttttttttttttt", kilofirst[0])
min3 =
projectDistanceLastUpdate.previous_project_distance_update[
Object.keys(
projectDistanceLastUpdate.previous_project_distance_update
)[distanceIndex]
][0];
projectProgressPercentage3 = $(
"#project-progress-percentage3"
).slider({
min: 0,
max: 100,
value: min3,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
case 4:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
min4 =
projectDistanceLastUpdate.previous_project_distance_update[
Object.keys(
projectDistanceLastUpdate.previous_project_distance_update
)[distanceIndex]
][0];
projectProgressPercentage4 = $(
"#project-progress-percentage4"
).slider({
min: 0,
max: 100,
value: min4,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
case 5:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
min5 =
projectDistanceLastUpdate.previous_project_distance_update[
Object.keys(
projectDistanceLastUpdate.previous_project_distance_update
)[distanceIndex]
][0];
console.log("min5pishoo", min5)
projectProgressPercentage5 = $(
"#project-progress-percentage5"
).slider({
min: 0,
max: 100,
value: min5,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
case 6:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
min6 =
projectDistanceLastUpdate.previous_project_distance_update[
Object.keys(
projectDistanceLastUpdate.previous_project_distance_update
)[distanceIndex]
][0];
console.log("min6", min6)
console.log("project-progress-percentage6", $("#project-progress-percentage6"))
projectProgressPercentage6 = $(
"#project-progress-percentage6"
).slider({
min: 0,
max: 100,
value: 0,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
console.log("pitikooomin6")
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
console.log("projectProgressPercentage6projectProgressPercentage6", projectProgressPercentage6)
break;
}
case 7:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
min7 =
projectDistanceLastUpdate.previous_project_distance_update[
Object.keys(
projectDistanceLastUpdate.previous_project_distance_update
)[distanceIndex]
][0];
projectProgressPercentage7 = $(
"#project-progress-percentage7"
).slider({
min: 0,
max: 100,
value: min7,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
case 8:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
min8 =
projectDistanceLastUpdate.previous_project_distance_update[
Object.keys(
projectDistanceLastUpdate.previous_project_distance_update
)[distanceIndex]
][0];
projectProgressPercentage8 = $(
"#project-progress-percentage8"
).slider({
min: 0,
max: 100,
value: min8,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
case 9:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
min9 =
projectDistanceLastUpdate.previous_project_distance_update[
Object.keys(
projectDistanceLastUpdate.previous_project_distance_update
)[distanceIndex]
][0];
projectProgressPercentage9 = $(
"#project-progress-percentage9"
).slider({
min: 0,
max: 100,
value: min9,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
}
$("#project_last_status").val(
projectDistanceLastUpdate.previous_project_status
);
}
}
} else {
for (let index = 1; index <= 9; index++) {
// console.log("ji",projectDefaultDistances)
let distanceIndex = Object.keys(projectDefaultDistances).findIndex(
function (entry) {
// console.log("entry" , entry )
// kilofirst = projectDefaultDistances[index];
// console.log("kilofirst", kilofirst)
return entry == index;
}
);
// console.log(index + " -> " + distanceIndex);
if (distanceIndex == -1) {
$("#item" + index).hide();
$("#item" + index + "-data").hide();
} else {
switch (index) {
case 1:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
// console.log(kilofirst)
projectProgressPercentage1 = $(
"#project-progress-percentage1"
).slider({
min: 0,
max: 100,
value: 0,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
case 2:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
projectProgressPercentage2 = $(
"#project-progress-percentage2"
).slider({
min: 0,
max: 100,
value: 0,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
case 3:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
projectProgressPercentage3 = $(
"#project-progress-percentage3"
).slider({
min: 0,
max: 100,
value: 0,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
case 4:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
projectProgressPercentage4 = $(
"#project-progress-percentage4"
).slider({
min: 0,
max: 100,
value: 0,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
case 5:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
projectProgressPercentage5 = $(
"#project-progress-percentage5"
).slider({
min: 0,
max: 100,
value: 0,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
case 6:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
projectProgressPercentage6 = $(
"#project-progress-percentage6"
).slider({
min: 0,
max: 100,
value: 0,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
case 7:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
projectProgressPercentage7 = $(
"#project-progress-percentage7"
).slider({
min: 0,
max: 100,
value: 0,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
case 8:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
projectProgressPercentage8 = $(
"#project-progress-percentage8"
).slider({
min: 0,
max: 100,
value: 0,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
case 9:
{
$("#item" + index).show();
$("#item" + index + "-data").show();
projectProgressPercentage9 = $(
"#project-progress-percentage9"
).slider({
min: 0,
max: 100,
value: 0,
ticks: [0, 100],
ticks_snap_bounds: 1,
formatter: function (value) {
return value + "٪";
},
// tooltip: "always",
tooltip_position: "bottom",
});
break;
}
}
// $("#contractor-fee").attr('max' , //todo yasi );
// console.log(
// projectDistanceLastUpdate[
// Object.keys(projectDistanceLastUpdate)[distanceIndex]
// ]
// );
}
}
}
if (projectDistanceLastUpdate != null) {
if (projectDistanceLastUpdate.previous_project_status == 6) {
$("#stop-reason-text-div").css("display", "block");
$("#stop-reason-text").val(
projectDistanceLastUpdate.previous_stop_reason
);
}
}
restrictInputOtherThanArabic($("#stop-reason-text"));
$("#project_last_status").on("change", function () {
if ($("#project_last_status").val() == 6) {
$("#stop-reason-text-div").css("display", "");
} else {
$("#stop-reason-text-div").css("display", "none");
}
});
$("#project-update-modal").modal("show");
});
$("#add-update-button").on("click", function () {
var testflag = 0;
let formData = new FormData();
let project_distance_update = {};
if (projectDistanceLastUpdate != null) {
console.log(min1, min2, min3, min4);
// var minval = projectDistanceLastUpdate.previous_physical_progress
if ($("#item1").css("display") != "none") {
if (projectProgressPercentage1.slider("getValue") < min1) {
var data =
' درصد نمیتواند از ' +
min1 +
" کمتر باشد ";
$("#alertshowprogress1").empty();
$("#alertshowprogress1").append(data);
$("#alertshowprogress1").css("color", "red");
testflag = 1;
}
}
if ($("#item2").css("display") != "none") {
if (projectProgressPercentage2.slider("getValue") < min2) {
var data =
' درصد نمیتواند از ' +
min2 +
" کمتر باشد ";
$("#alertshowprogress2").empty();
$("#alertshowprogress2").append(data);
$("#alertshowprogress2").css("color", "red");
testflag = 1;
}
}
if ($("#item3").css("display") != "none") {
if (projectProgressPercentage3.slider("getValue") < min3) {
var data =
' درصد نمیتواند از ' +
min3 +
" کمتر باشد ";
$("#alertshowprogress3").empty();
$("#alertshowprogress3").append(data);
$("#alertshowprogress3").css("color", "red");
testflag = 1;
}
}
if ($("#item4").css("display") != "none") {
if (projectProgressPercentage4.slider("getValue") < min4) {
var data =
' درصد نمیتواند از ' +
min4 +
" کمتر باشد ";
$("#alertshowprogress4").empty();
$("#alertshowprogress4").append(data);
$("#alertshowprogress4").css("color", "red");
testflag = 1;
}
}
if ($("#item5").css("display") != "none") {
if (projectProgressPercentage5.slider("getValue") < min5) {
var data =
' درصد نمیتواند از ' +
min5 +
" کمتر باشد ";
$("#alertshowprogress5").empty();
$("#alertshowprogress5").append(data);
$("#alertshowprogress5").css("color", "red");
testflag = 1;
}
}
if ($("#item6").css("display") != "none") {
if (projectProgressPercentage6.slider("getValue") < min6) {
var data =
' درصد نمیتواند از ' +
min6 +
" کمتر باشد ";
$("#alertshowprogress6").empty();
$("#alertshowprogress6").append(data);
$("#alertshowprogress6").css("color", "red");
testflag = 1;
}
}
if ($("#item7").css("display") != "none") {
if (projectProgressPercentage7.slider("getValue") < min7) {
var data =
' درصد نمیتواند از ' +
min7 +
" کمتر باشد ";
$("#alertshowprogress7").empty();
$("#alertshowprogress7").append(data);
$("#alertshowprogress7").css("color", "red");
testflag = 1;
}
}
if ($("#item8").css("display") != "none") {
if (projectProgressPercentage8.slider("getValue") < min8) {
var data =
' درصد نمیتواند از ' +
min8 +
" کمتر باشد ";
$("#alertshowprogress8").empty();
$("#alertshowprogress8").append(data);
$("#alertshowprogress8").css("color", "red");
testflag = 1;
}
}
if ($("#item9").css("display") != "none") {
if (projectProgressPercentage9.slider("getValue") < min9) {
var data =
' درصد نمیتواند از ' +
min9 +
" کمتر باشد ";
$("#alertshowprogress9").empty();
$("#alertshowprogress9").append(data);
$("#alertshowprogress9").css("color", "red");
testflag = 1;
}
}
}
if ($("#project_last_status").val() == 0) {
$("#project_last_status").addClass("is-invalid");
testflag = 1;
}
if (
$("#project_last_status").val() == 6 &&
$("#stop-reason-text").val().length == 0
) {
console.log("happend");
$("#stop-reason-text").addClass("is-invalid");
testflag = 1;
} else {
$("#stop-reason-text").removeClass("is-invalid");
}
for (let index = 1; index <= 9; index++) {
if ($("#item" + index).css("display") != "none") {
if (index == 1) {
project_distance_update[index] = [];
project_distance_update[index].push(
projectProgressPercentage1.slider("getValue").toString()
);
project_distance_update[index].push("تعریض و روکش");
} else if (index == 2) {
project_distance_update[index] = [];
project_distance_update[index].push(
projectProgressPercentage2.slider("getValue").toString()
);
project_distance_update[index].push("اصلاح قوس");
} else if (index == 3) {
project_distance_update[index] = [];
project_distance_update[index].push(
projectProgressPercentage3.slider("getValue").toString()
);
project_distance_update[index].push("تراشه برداری");
} else if (index == 4) {
project_distance_update[index] = [];
project_distance_update[index].push(
projectProgressPercentage4.slider("getValue").toString()
);
project_distance_update[index].push("روشنایی نقظه ای");
} else if (index == 5) {
project_distance_update[index] = [];
project_distance_update[index].push(
projectProgressPercentage5.slider("getValue").toString()
);
project_distance_update[index].push(
"احداث تقاطع غیر هم سطح (پل/زیرگذر)"
);
} else if (index == 6) {
project_distance_update[index] = [];
project_distance_update[index].push(
projectProgressPercentage6.slider("getValue").toString()
);
project_distance_update[index].push("ایمن سازی علائم و حفاظ");
} else if (index == 7) {
project_distance_update[index] = [];
project_distance_update[index].push(
projectProgressPercentage7.slider("getValue").toString()
);
project_distance_update[index].push("اصلاح ورودی/خروجی");
} else if (index == 8) {
project_distance_update[index] = [];
project_distance_update[index].push(
projectProgressPercentage8.slider("getValue").toString()
);
project_distance_update[index].push("تعریض ابنیه فنی");
} else if (index == 9) {
project_distance_update[index] = [];
project_distance_update[index].push(
projectProgressPercentage9.slider("getValue").toString()
);
project_distance_update[index].push("سایر اقدامات");
}
}
}
console.log("pitikoo", JSON.stringify(project_distance_update));
if (isSetprogressAbrarMarker) {
progressLatlng = [
progressAbrarMarker.getLatLng().lat.toFixed(6),
progressAbrarMarker.getLatLng().lng.toFixed(6),
];
} else {
$("#pin-marker-progress").addClass("pin-warn");
testflag = 1;
}
console.log("testflag", testflag);
if (testflag == 0) {
console.log("project_distance_update", project_distance_update);
formData.append(
"project-distance-update",
JSON.stringify(project_distance_update)
);
formData.append(
"project-status",
$("#project_last_status").children("option:selected").val()
);
formData.append("team-latlng", progressLatlng);
if ($("#project_last_status").val() == 6) {
formData.append("stop-reason", $("#stop-reason-text").val());
}
for (var value of formData.values()) {
console.log(value);
}
showLoaderScreen();
$.ajax({
url: "https://rms.rmto.ir/rahdari/road-danger-prevention/" +
idkol +
"/edit-distance-update",
type: "POST",
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
},
data: formData,
cache: false,
contentType: false,
processData: false,
success: function (result) {
$("#project-update-modal").modal("hide");
hideLoaderScreen();
prepareImageModal();
historyId = result.history_id;
$("#image-upload-modal").modal({
backdrop: "static",
keyboard: false,
});
$("#image-upload-modal").modal("show");
},
error: function (error) {
hideLoaderScreen();
console.log(error);
Swal.fire({
icon: "error",
title: "خطا",
text: "پر کردن صحیح تمامی عناوین خواسته شده الزامی است",
confirmButtonText: "بستن",
});
},
});
} else {
Swal.fire({
icon: "error",
title: "خطا",
text: "پر کردن صحیح تمامی عناوین خواسته شده الزامی است",
confirmButtonText: "بستن",
});
}
});
function openSlider(tr) {
let row = tablethird.row(tr);
sliderImages = row.data().images;
let updated_at = row.data().updated_at;
let dataLength = sliderImages.length;
console.log(sliderImages);
$("#slideshow-slide").find(".mySlides").remove();
$("#slideshow-dot").find(".dot").remove();
for (let index = 0; index < sliderImages.length; index++) {
if (sliderImages[index].path.includes("image-1")) {
let divSlide =
'' +
(index + 1) +
" / " +
sliderImages.length +
'
تصویر ' +
"1" +
":" +
" " +
"تاریخ :" +
updated_at +
"
";
$("#slideshow-slide").append(divSlide);
$("#slideshow-dot").append(
' '
);
}
if (sliderImages[index].path.includes("image-2")) {
let divSlide =
'' +
(index + 1) +
" / " +
sliderImages.length +
'
تصویر ' +
(index + 1) +
":" +
" " +
"تاریخ :" +
updated_at +
"
";
$("#slideshow-slide").append(divSlide);
$("#slideshow-dot").append(
' '
);
}
if (sliderImages[index].path.includes("image-3")) {
let divSlide =
'' +
(index + 1) +
" / " +
sliderImages.length +
'
تصویر ' +
(index + 1) +
":" +
" " +
"تاریخ :" +
updated_at +
"
";
$("#slideshow-slide").append(divSlide);
$("#slideshow-dot").append(
' '
);
}
if (sliderImages[index].path.includes("image-4")) {
let divSlide =
'' +
(index + 1) +
" / " +
sliderImages.length +
'
تصویر ' +
(index + 1) +
":" +
" " +
"تاریخ :" +
updated_at +
"
";
$("#slideshow-slide").append(divSlide);
$("#slideshow-dot").append(
' '
);
}
if (sliderImages[index].path.includes("image-5")) {
let divSlide =
'' +
(index + 1) +
" / " +
sliderImages.length +
'
تصویر ' +
(index + 1) +
":" +
" " +
"تاریخ :" +
updated_at +
"
";
$("#slideshow-slide").append(divSlide);
$("#slideshow-dot").append(
' '
);
}
if (sliderImages[index].path.includes("image-6")) {
let divSlide =
'' +
(index + 1) +
" / " +
sliderImages.length +
'
تصویر ' +
(index + 1) +
":" +
" " +
"تاریخ :" +
updated_at +
"
";
$("#slideshow-slide").append(divSlide);
$("#slideshow-dot").append(
' '
);
}
if (sliderImages[index].path.includes("image-7")) {
let divSlide =
'' +
(index + 1) +
" / " +
sliderImages.length +
'
تصویر ' +
(index + 1) +
":" +
" " +
"تاریخ :" +
updated_at +
"
";
$("#slideshow-slide").append(divSlide);
$("#slideshow-dot").append(
' '
);
}
if (sliderImages[index].path.includes("image-8")) {
let divSlide =
'' +
(index + 1) +
" / " +
sliderImages.length +
'
تصویر ' +
(index + 1) +
":" +
" " +
"تاریخ :" +
updated_at +
"
";
$("#slideshow-slide").append(divSlide);
$("#slideshow-dot").append(
' '
);
}
}
if (dataLength > 0) {
slideindex = 1;
layerslidershow(slideindex);
$("#slideroverlay").css("display", "block");
}
}
function layerslidershow(n) {
let slides = $("#slideroverlay #slideshow-slide .mySlides");
let dots = $("#slideroverlay #slideshow-dot .dot");
if (n > slides.length) {
slideIndexlayer = 1;
}
if (n < 1) {
slideIndexlayer = slides.length;
}
$(slides).each(function () {
$(this).css("display", "none");
});
$(dots).each(function () {
$(this).removeClass("active");
});
$(slides[slideIndexlayer - 1]).css("display", "block");
$(dots[slideIndexlayer - 1]).addClass("active");
}
$("#slideroverlay .close").on("click", function () {
$(this).parent().parent().css("display", "none");
$("#slideshow-slide").find(".mySlides").remove();
$("#slideshow-dot").find(".dot").remove();
});
$("#slideroverlay #slideshow-slide .prev").on("click", function () {
layerslidershow((slideIndexlayer -= 1));
});
$("#slideroverlay #slideshow-slide .next").on("click", function () {
layerslidershow((slideIndexlayer += 1));
});
function currentphotoshow(slideIndex) {
layerslidershow((slideIndexlayer = slideIndex));
}
function ajaxcalltablesec(idkol) {
console.log("hi");
$.ajax({
url: "https://rms.rmto.ir/rahdari/road-danger-prevention/" +
idkol +
"/get-distance",
type: "GET",
success: function (result) {
$("#exampletool").dataTable().fnClearTable();
$("#exampletool").dataTable().fnAddData(result.data);
hideLoaderScreen();
Swal.fire({
icon: "success",
title: "با موفقیت بروزرسانی شد",
confirmButtonText: "بستن",
});
},
});
}
function ajaxcalltablefirst() {
$.ajax({
url: "https://rms.rmto.ir/public/rahdari/road-danger-prevention/getlist",
type: "GET",
success: function (result) {
$("#example").dataTable().fnClearTable();
$("#example").dataTable().fnAddData(result.data);
hideLoaderScreen();
},
});
}
function ajaxcalltablefirsttool(idkol) {
$.ajax({
url: "https://rms.rmto.ir/public/rahdari/road-danger-prevention/getlist",
type: "GET",
success: function (result) {
$("#example").dataTable().fnClearTable();
$("#example").dataTable().fnAddData(result.data);
ajaxcalltablesec(idkol);
},
});
}
function ajaxcalltablefirstupdate(idkol) {
$.ajax({
url: "https://rms.rmto.ir/public/rahdari/road-danger-prevention/getlist",
type: "GET",
success: function (result) {
$("#example").dataTable().fnClearTable();
$("#example").dataTable().fnAddData(result.data);
ajaxcalltablethird2(idkol);
},
});
}
function ajaxcalltablethird2(idkol) {
$.ajax({
url: "https://rms.rmto.ir/rahdari/road-danger-prevention/" +
idkol +
"/get-distance-update-list",
type: "GET",
success: function (result) {
console.log(result.data.distance_update);
$("#example-update").dataTable().fnClearTable();
$("#example-update").dataTable().fnAddData(result.data.distance_update);
hideLoaderScreen();
$("#image-upload-modal").modal("hide");
Swal.fire({
icon: "success",
title: "با موفقیت بروزرسانی شد",
confirmButtonText: "بستن",
});
},
});
}
function ajaxcalltablethird3(idkol) {
$.ajax({
url: "https://rms.rmto.ir/rahdari/road-danger-prevention/" +
idkol +
"/get-distance-update-list",
type: "GET",
success: function (result) {
console.log(result.data.distance_update);
$("#example-update").dataTable().fnClearTable();
$("#example-update").dataTable().fnAddData(result.data.distance_update);
hideLoaderScreen();
},
});
}
function showprojecttype() {
$("#stepModalprojecttype").modal("show");
}
$("#approveprojecttype").on("click", function () {
//to do yasi
if ($("#roadmaintanace").is(":checked")) {
window.open("https://rms.rmto.ir/road-maintenance-project");
} else if ($("#reviewdangerpoint").is(":checked")) {
window.open("https://rms.rmto.ir/road-danger-prevention");
} else if ($("#improveroad").is(":checked")) {
window.open("https://rms.rmto.ir/road-upgrade-safety");
} else if ($("#faniproject").is(":checked")) {
window.open("https://rms.rmto.ir/road-technical-building");
} else if ($("#rahdarkhane").is(":checked")) {
window.open("https://rms.rmto.ir/road-tollhouse-management");
} else if ($("#projectbuild").is(":checked")) {
window.open("https://rms.rmto.ir/road-construction-rural");
}
$("#stepModalprojecttype").modal("hide");
});
function showprojecttest(index) {
console.log("test change page");
if (index == 1) {
window.open("https://rms.rmto.ir/road-maintenance-project");
// to do next page
} else if (index == 2) {
window.open("https://rms.rmto.ir/road-danger-prevention");
} else if (index == 3) {
window.open("https://rms.rmto.ir/road-upgrade-safety");
} else if (index == 4) {
window.open("https://rms.rmto.ir/road-technical-building");
} else if (index == 5) {
window.open("https://rms.rmto.ir/road-tollhouse-management");
} else if (index == 6) {
window.open("https://rms.rmto.ir/road-construction-rural");
}
}
function showMapModalStatic(lat, lng) {
$("#exampleModalCenterStatic").modal("show");
if (staticMap == null) {
setTimeout(() => {
createLeafletMapStatic();
setNewView(lat, lng);
}, 500);
} else {
setNewView(lat, lng);
}
}
function createLeafletMapStatic() {
let bounds = [
[42.9130026312, 75.6166317076],
[20.5782370061, 35.5092252948],
];
staticMap = new L.map("abrar-map-static", {
maxBounds: bounds,
minZoom: 6,
}).setView([32.4279, 53.688], 9);
staticMap.dragging.disable();
L.tileLayer("https://testmap.141.ir/141map/{z}/{x}/{y}.png", {}).addTo(
staticMap
);
ekipAbrarMarkerJustShow = new L.marker(L.latLng(staticMap.getCenter()), {
icon: progressAbrarDivIcon,
draggable: false,
}).addTo(staticMap);
startAbrarMarkerJustShow = new L.marker(startLatlng, {
icon: startAbrarDivIcon,
draggable: false,
}).addTo(staticMap);
if (endLatlng[0] != "NaN") {
endAbrarMarkerJustShow = new L.marker(endLatlng, {
icon: endAbrarDivIcon,
draggable: false,
}).addTo(staticMap);
}
}
function setNewView(lat, lng) {
staticMap.setView(new L.LatLng(lat, lng), 9);
if (ekipAbrarMarkerJustShow == null) {
ekipAbrarMarkerJustShow = new L.marker(L.latLng(staticMap.getCenter()), {
icon: progressAbrarDivIcon,
draggable: false,
}).addTo(staticMap);
} else {
ekipAbrarMarkerJustShow.setLatLng([lat, lng]);
}
if (startAbrarMarkerJustShow == null) {
startAbrarMarkerJustShow = new L.marker(startLatlng, {
icon: startAbrarDivIcon,
draggable: false,
}).addTo(staticMap);
} else {
startAbrarMarkerJustShow.setLatLng(startLatlng);
}
if (endAbrarMarkerJustShow == null && endLatlng[0] != "NaN") {
endAbrarMarkerJustShow = new L.marker(endLatlng, {
icon: endAbrarDivIcon,
draggable: false,
}).addTo(staticMap);
} else {
endAbrarMarkerJustShow.setLatLng(endLatlng);
}
}
function prepareImageModal() {
var test = "";
test = ``;
test += `
`;
test += `
`;
test += `
`;
test += `
`;
test += `
`;
test += `
`;
test += `
`;
test += `
`;
var additional = `
ثبت و بروزرسانی
`;
$("#image-upload-modal .modal-body").empty();
$("#image-upload-modal .modal-body").append(test);
$("#image-upload-modal .modal-body").append(additional);
$("#inputFile1").change(function () {
$("#firstshow").css("display", "none");
$("#uploadBox2").css("display", "block");
$("#add-update-image").attr("disabled", false);
readURL1(this);
});
$("#inputFile2").change(function () {
$("#secondshow").css("display", "none");
$("#uploadBox3").css("display", "block");
readURL2(this);
});
$("#inputFile3").change(function () {
$("#thirdshow").css("display", "none");
$("#uploadBox4").css("display", "block");
readURL3(this);
});
$("#inputFile4").change(function () {
$("#fourthshow").css("display", "none");
$("#uploadBox5").css("display", "block");
readURL4(this);
});
$("#inputFile5").change(function () {
$("#fifthshow").css("display", "none");
$("#uploadBox6").css("display", "block");
readURL5(this);
});
$("#inputFile6").change(function () {
$("#sixshow").css("display", "none");
$("#uploadBox7").css("display", "block");
readURL6(this);
});
$("#inputFile7").change(function () {
$("#sevenshow").css("display", "none");
$("#uploadBox8").css("display", "block");
readURL7(this);
});
$("#inputFile8").change(function () {
$("#eightshow").css("display", "none");
$("#uploadBox9").css("display", "block");
readURL8(this);
});
}
$(document).on("load", function () {
$(window).bind("resize", checkPosition);
});
function checkPosition() {
if ($(window).width() < 1100) {
$("#example_wrapper").css("margin-top", "50px");
} else {
$("#example_wrapper").css("margin-top", "");
}
if ($(window).width() < 555) {
$(".content-center-dataTable").css("width", "260px");
console.log("working");
} else {
$(".content-center-dataTable").css("width", "");
}
if ($(window).width() < 440) {
$(".dataTables_filter input").css("width", "94px");
$(".dataTables_filter").css("margin-bottom", "10px");
$(".dt-buttons").addClass("d-flex");
$(".dt-buttons").addClass("justify-content-center");
$(".dt-buttons button").css("font-size", "10px");
} else {
$(".dataTables_filter input").css("width", "");
$(".dataTables_filter").css("margin-bottom", "");
$(".dt-buttons").removeClass("d-flex");
$(".dt-buttons button").css("font-size", "");
$(".dt-buttons").removeClass("justify-content-center");
}
}
$("#example").on("click", ".elsaghPro", function () {
var tr = $(this).closest("tr");
var row = table.row(tr);
project_id = row.data().id;
console.log("lll", project_id)
$('#modalfinancecontract').modal({ backdrop: 'static', keyboard: false })
});
$("#contract_id").autocomplete({
source: function (request, response) {
$.ajax({
url: "https://rms.rmto.ir/public/csi/search?search=" + request.term,
type: "GET",
headers: {
"accept": "application/json",
},
cache: false,
contentType: false,
processData: false,
success: function (res) {
$.each(res.data, function (key, value) {
keyOfContract = key;
console.log("moz", key);
});
response(res.data);
},
});
},
});
$("#submitcontract").on("click", function () {
var followup = $("#followup").val();
var last_digit_project = $("#last_digit_project").val();
var last_function_operator = $("#last_function_operator").val();
var last_payable_operator = $("#last_payable_operator").val();
var complete_payable = $("#complete_payable").val();
var reqData = new FormData();
reqData.append('followup', followup);
reqData.append('last_digit_project', last_digit_project);
reqData.append('last_function_operator', last_function_operator);
reqData.append('last_payable_operator', last_payable_operator);
reqData.append('complete_payable', complete_payable);
reqData.append('project_type_id', 2);
reqData.append('project_id', project_id);
reqData.append('contract_id', keyOfContract);
$.ajax({
url: "https://rms.rmto.ir/api/csi/create",
type: "POST",
data: reqData,
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
},
cache: false,
contentType: false,
processData: false,
success: function (result) {
console.log("result", result);
$('#modalfinancecontract').modal("hide")
},
error: function (error) {
console.log(error);
},
});
});
function showtablefinancecontract() {
tablesetadi = $("#modalfinancecontracttable").DataTable({
dom: "
p>",
pagingType: "simple_numbers",
scrollX: true,
scrollY: "500px",
responsive: true,
language: {
sEmptyTable: "هیچ دادهای در جدول وجود ندارد",
sInfo: "نمایش _START_ تا _END_ از _TOTAL_ ردیف",
sInfoEmpty: "نمایش 0 تا 0 از 0 ردیف",
sInfoFiltered: "(فیلتر شده از _MAX_ ردیف)",
sInfoPostFix: "",
sInfoThousands: ",",
sLengthMenu: "نمایش _MENU_ ردیف",
sLoadingRecords: "در حال بارگزاری...",
sProcessing: "در حال پردازش...",
sSearch: "جستجو: ",
sZeroRecords: "رکوردی با این مشخصات پیدا نشد",
oPaginate: {
sFirst: "برگهی نخست",
sLast: "برگهی آخر",
sNext: "بعدی",
sPrevious: "قبلی",
},
oAria: {
sSortAscending: ": فعال سازی نمایش به صورت صعودی",
sSortDescending: ": فعال سازی نمایش به صورت نزولی",
},
},
order: [
[0, "asc"][(1, "asc")],
[2, "desc"],
[3, "desc"],
[4, "desc"]
],
order: [
[0, "desc"]
],
processing: true,
ajax: {
url: "https://rms.rmto.ir/public/rahdari/road-danger-prevention/getlist",
type: "GET",
dataSrc: function (json) {
console.log("json", json.data)
return json.data;
},
},
columns: [
{ data: "province_fa" },
{ data: "project_name" },
{ data: "axis_type_fa" },
{
data: "province_fa",
},
{ data: "contractor_name" },
{ data: "axis_name" },
{ data: "axis_name" },
{
data: "axis_name",
},
{ data: "axis_name" },
{ data: "axis_name" },
{ data: "axis_name" },
{ data: "axis_name" },
{ data: "axis_name" },
{ data: "axis_name" },
{ data: "axis_name" },
{ data: "axis_name" },
{ data: "province_fa" },
{ data: "province_fa" },
{ data: "province_fa" },
{ data: "province_fa" },
],
initComplete: function () {
$("body").find(".dataTables_scrollBody").addClass("scrollbar");
},
});
}