diff --git a/smart_service/masters/doctype/vehicle/vehicle.js b/smart_service/masters/doctype/vehicle/vehicle.js index f9649fa..d390ce7 100644 --- a/smart_service/masters/doctype/vehicle/vehicle.js +++ b/smart_service/masters/doctype/vehicle/vehicle.js @@ -101,10 +101,9 @@ frappe.ui.form.on('Vehicle', { } } - var regex = /[!@#$%^&*()_+-\=\[\]{};'`"\\|.<>\/?]+/; - if (regex.test(frm.doc.display_order) === true) { - frappe.throw(__("Display Order: negative values not allowed.")); - frappe.validated = false; + if (frm.doc.display_order <= 0) { + frappe.throw(__("Display Order: negative values or 0 not allowed.")); + frappe.validated = false; } if (frm.doc.display_order && frm.doc.vehicle && frm.doc.vehicle_segment && !frm.is_new()) { diff --git a/smart_service/masters/doctype/vehicle_segment/vehicle_segment.js b/smart_service/masters/doctype/vehicle_segment/vehicle_segment.js index 5d079be..6123269 100644 --- a/smart_service/masters/doctype/vehicle_segment/vehicle_segment.js +++ b/smart_service/masters/doctype/vehicle_segment/vehicle_segment.js @@ -4,88 +4,88 @@ var original_display_order = 0; var vehicle_count = 0; frappe.ui.form.on('Vehicle Segment', { - onload: function(frm){ - frappe.db.count('Vehicle Segment') + onload: function (frm) { + frappe.db.count('Vehicle Segment') .then(count => { vehicle_count = count + 1; console.log(vehicle_count) - if (frm.is_new()){ - frm.set_value("display_order",vehicle_count); + if (frm.is_new()) { + frm.set_value("display_order", vehicle_count); } else { original_display_order = frm.doc.display_order; } - }); + }); }, - refresh: function(frm) { - if (frm.is_new()){ - frm.set_df_property('display_order', 'read_only', 1); + refresh: function (frm) { + if (frm.is_new()) { + frm.set_df_property('display_order', 'read_only', 1); } else { - frm.set_df_property('display_order', 'read_only', 0); + frm.set_df_property('display_order', 'read_only', 0); } - frappe.db.count('Vehicle Segment') + frappe.db.count('Vehicle Segment') .then(count => { vehicle_count = count + 1; - if (frm.is_new()){ - frm.set_value("display_order",vehicle_count); + if (frm.is_new()) { + frm.set_value("display_order", vehicle_count); } else { original_display_order = frm.doc.display_order; } - }); - }, - - validate: function(frm) { - if(frm.doc.vehicle_segment){ - if (frm.doc.vehicle_segment.length>50){ - frappe.msgprint("Vehicle Segment: Only 50 characters are allowed") - validated = false; - } - if (frm.doc.vehicle_segment.length == 1){ - frappe.msgprint("Vehicle Segment: Single character not allowed") - validated = false; - } - } - if (frm.doc.vehicle_segment == "."){ - frappe.throw(__("Just a . is not prescribed!")); - frappe.validated = false; - } - var regex = /[!@#$%^&*()_+-\=\[\]{};'`"\\|.<>\/?]+/; - if (regex.test(frm.doc.display_order) === true) { - frappe.throw(__("Display Order: negative values not allowed.")); - frappe.validated = false; + }); + }, + + validate: function (frm) { + if (frm.doc.vehicle_segment) { + if (frm.doc.vehicle_segment.length > 50) { + frappe.msgprint("Vehicle Segment: Only 50 characters are allowed") + validated = false; + } + if (frm.doc.vehicle_segment.length == 1) { + frappe.msgprint("Vehicle Segment: Single character not allowed") + validated = false; + } } - var regex = /[!@#$%^&*()_+\-=\[\]{};'`~:"\\|,.<>\/?]+/; - if(frm.doc.vehicle_segment){ - if (regex.test(frm.doc.vehicle_segment) === true){ - frappe.throw(__("Vehicle Segment: Only letters and numbers are allowed")); + if (frm.doc.vehicle_segment == ".") { + frappe.throw(__("Just a . is not prescribed!")); frappe.validated = false; - } else if(frm.doc.vehicle_segment) { - if(frm.doc.vehicle_segment.includes("'")) { - frappe.throw(__("Vehicle Segment: Only letters and numbers are allowed.")); + } + + if (frm.doc.display_order <= 0) { + frappe.throw(__("Display Order: negative values not allowed.")); + frappe.validated = false; + } + var regex = /[!@#$%^&*()_+\-=\[\]{};'`~:"\\|,.<>\/?]+/; + if (frm.doc.vehicle_segment) { + if (regex.test(frm.doc.vehicle_segment) === true) { + frappe.throw(__("Vehicle Segment: Only letters and numbers are allowed")); frappe.validated = false; + } else if (frm.doc.vehicle_segment) { + if (frm.doc.vehicle_segment.includes("'")) { + frappe.throw(__("Vehicle Segment: Only letters and numbers are allowed.")); + frappe.validated = false; + } } } - } - if (frm.doc.display_order && frm.doc.vehicle_segment && !frm.is_new()){ - //***check if there is same display_order + if (frm.doc.display_order && frm.doc.vehicle_segment && !frm.is_new()) { + //***check if there is same display_order frappe.db.get_list('Vehicle Segment', { fields: ['display_order', 'name'], filters: { display_order: frm.doc.display_order, - vehicle_segment:["!=",frm.doc.vehicle_segment] + vehicle_segment: ["!=", frm.doc.vehicle_segment] } }).then(records => { - if (records.length){ + if (records.length) { frappe.db.set_value('Vehicle Segment', records[0].name, { display_order: original_display_order }).then(r => { let doc = r.message; frappe.show_alert({ - message:__('Swapped display order with: ' + records[0].name), - indicator:'green' + message: __('Swapped display order with: ' + records[0].name), + indicator: 'green' }, 5); }); } else { - if (frm.doc.display_order >= vehicle_count){ + if (frm.doc.display_order >= vehicle_count) { let display_vehicle_count = vehicle_count - 1; msgprint('There are only ' + display_vehicle_count + ' Vehicle Segment(s)'); frappe.validated = false; @@ -93,5 +93,5 @@ frappe.ui.form.on('Vehicle Segment', { } }); } - } + } });