diff --git a/config.template.php b/config.template.php
index fe88d5134b748dc385685ab7803d28d303380bd3..5c8fe7c9cca78fdc3d29f1fc16a2663527f59a4c 100644
--- a/config.template.php
+++ b/config.template.php
@@ -175,8 +175,5 @@ if(isset($default_timezone) && function_exists('date_default_timezone_set')) {
 //Set the default layout 
 $default_layout = 'v7';
 
-//Maximiun scheduled workflows default value set to 10
-$max_scheduled_workflows = 10;
-
 include_once 'config.security.php';
 ?>
diff --git a/layouts/v7/modules/Vtiger/resources/List.js b/layouts/v7/modules/Vtiger/resources/List.js
index 731d425c3baa9c8a8822855fa3e9c92b4bb9cd9e..0a46561ef477a51bb1e443607bd68f46be3d561e 100644
--- a/layouts/v7/modules/Vtiger/resources/List.js
+++ b/layouts/v7/modules/Vtiger/resources/List.js
@@ -1208,10 +1208,7 @@ Vtiger.Class("Vtiger_List_Js", {
 				isOwnerChanged = false;
 			});
 			
-			//automatically select fields for mass edit when updated
-			$('#massEdit :input').change(function() {
-				$(this).closest('tr').find("input[id^=include_in_mass_edit_" + $(this).attr('name') + "]").prop( "checked", true );
-			});
+			thisInstance.registerAutoIncludeFieldsInMassEdit();
 			
 			app.helper.registerLeavePageWithoutSubmit($("#massEdit"));
 			app.helper.registerModalDismissWithoutSubmit($("#massEdit"));
@@ -1362,21 +1359,29 @@ Vtiger.Class("Vtiger_List_Js", {
         });
     },
     
-	saveMassEdit: function (event, form_original_data, isOwnerChanged) {
+    registerAutoIncludeFieldsInMassEdit: function () {
+    	
+    	var autoIncludeFieldsInMassEditCallback = function() {
+			var fieldName = $(this).attr('name');
+			fieldName = fieldName.replace(/\[\]$/, ''); //remove trailing [] for cases like multiselect
+			
+			$(this).closest('tr').find("input[id=include_in_mass_edit_" + fieldName + "]").prop( "checked", true );
+		};
+		
+		var formInputFields = jQuery('#massEdit :input').not('[id^=include_in_mass_edit_]');
+		formInputFields.on(Vtiger_Edit_Js.referenceSelectionEvent, autoIncludeFieldsInMassEditCallback);
+		formInputFields.change(autoIncludeFieldsInMassEditCallback);
+    },
+    
+	saveMassEdit: function (event) {
 		event.preventDefault();
 		var form = $('#massEdit');
-		var form_new_data = form.serialize();
 		var changedFields = form.find("input[id^=include_in_mass_edit_]:checked");
 		
 		app.helper.showProgress();
-		if (changedFields.length > 0 || isOwnerChanged) {
-			var originalData = app.convertUrlToDataParams(form_original_data);
-			var newData = app.convertUrlToDataParams(form_new_data);
-
-			var form_update_data = '';
-			if (!newData['assigned_user_id'] && isOwnerChanged) {
-				form_update_data += 'assigned_user_id=' + originalData['assigned_user_id'] + '&';
-			}
+		if (changedFields.length > 0) {
+			var newData = app.convertUrlToDataParams(form.serialize());
+			var updateFieldsRequest = '';
 
 			//add url params for hidden fields needed for the save request
 			var hiddenFields = form.children("input[type=hidden]");
@@ -1384,25 +1389,29 @@ Vtiger.Class("Vtiger_List_Js", {
 				key = $(this).attr("name");
 				
 				if (typeof newData[key] !== 'undefined') {
-					form_update_data += key + '=' + newData[key] + '&';
+					updateFieldsRequest += key + '=' + newData[key] + '&';
 				}
 			});
-			
+
 			//add url params for fields that will be updated
 			changedFields.each(function(i, obj){
-				var key = $(this).data("update-field");
-				var value = newData[key];
-				form_update_data += key + '=';
+				var fieldName = $(this).data("update-field");
+				var fieldNameArray = fieldName + encodeURI('[]'); //fieldnames of fields like multipicklist have [] after the fieldname
 				
+				var key = fieldName;
+				if (typeof newData[fieldNameArray] !== 'undefined') {
+					key = fieldNameArray;
+				}
+
+				var value = newData[key];
+				updateFieldsRequest += key + '=';
 				if (typeof value !== 'undefined') {
-					form_update_data += newData[key];
+					updateFieldsRequest += value;
 				}
-				form_update_data += '&';
+				updateFieldsRequest += '&';
 			});
 			
-			form_update_data = form_update_data.slice(0, -1);//remove last &
-			
-			app.request.post({data: form_update_data}).then(function (err, data) {
+			app.request.post({data: updateFieldsRequest}).then(function (err, data) {
 				app.helper.hideProgress();
 				if (data) {
 					jQuery('.vt-notification').remove();
diff --git a/modules/com_vtiger_workflow/VTWorkflowManager.inc b/modules/com_vtiger_workflow/VTWorkflowManager.inc
index e5c9d972ba8f5a162157cb2e7f8b866651c350cc..0ea8f1235af3b2a4337ded33ab62b9e1dc936f2f 100644
--- a/modules/com_vtiger_workflow/VTWorkflowManager.inc
+++ b/modules/com_vtiger_workflow/VTWorkflowManager.inc
@@ -111,8 +111,8 @@ class VTWorkflowManager{
 	 * @return int
 	 */
 	function getMaxAllowedScheduledWorkflows() {
-        global $max_scheduled_workflows;
-		return $max_scheduled_workflows;
+            vglobal('max_scheduled_workflows', 10);
+            return vglobal('max_scheduled_workflows');
 	}
 
 	function getWorkflowsForModule($moduleName){