Merge pull request #33051 from deepeshgarg007/timesheet_timer_button

fix: Timesheet timer button
diff --git a/erpnext/public/js/projects/timer.js b/erpnext/public/js/projects/timer.js
index 0e5c0d3..9dae711 100644
--- a/erpnext/public/js/projects/timer.js
+++ b/erpnext/public/js/projects/timer.js
@@ -48,21 +48,23 @@
 	var $btn_complete = dialog.$wrapper.find(".playpause .btn-complete");
 	var interval = null;
 	var currentIncrement = timestamp;
-	var initialised = row ? true : false;
+	var initialized = row ? true : false;
 	var clicked = false;
 	var flag = true; // Alert only once
 	// If row with not completed status, initialize timer with the time elapsed on click of 'Start Timer'.
 	if (row) {
-		initialised = true;
+		initialized = true;
 		$btn_start.hide();
 		$btn_complete.show();
-		initialiseTimer();
+		initializeTimer();
 	}
-	if (!initialised) {
+
+	if (!initialized) {
 		$btn_complete.hide();
 	}
+
 	$btn_start.click(function(e) {
-		if (!initialised) {
+		if (!initialized) {
 			// New activity if no activities found
 			var args = dialog.get_values();
 			if(!args) return;
@@ -90,11 +92,11 @@
 			return false;
 		}
 
-		if (!initialised) {
-			initialised = true;
+		if (!initialized) {
+			initialized = true;
 			$btn_start.hide();
 			$btn_complete.show();
-			initialiseTimer();
+			initializeTimer();
 		}
 	});
 
@@ -110,11 +112,13 @@
 		grid_row.doc.hours = currentIncrement / 3600;
 		grid_row.doc.to_time = frappe.datetime.now_datetime();
 		grid_row.refresh();
+		frm.dirty();
 		frm.save();
 		reset();
 		dialog.hide();
 	});
-	function initialiseTimer() {
+
+	function initializeTimer() {
 		interval = setInterval(function() {
 			var current = setCurrentIncrement();
 			updateStopwatch(current);
@@ -151,7 +155,7 @@
 
 	function reset() {
 		currentIncrement = 0;
-		initialised = false;
+		initialized = false;
 		clearInterval(interval);
 		$(".hours").text("00");
 		$(".minutes").text("00");