src/pyams_skin/resources/js/myams.js
changeset 383 86e1eae8090e
parent 380 86957fbcdcc5
child 389 092c4ab71fc0
--- a/src/pyams_skin/resources/js/myams.js	Fri Jul 20 09:33:27 2018 +0200
+++ b/src/pyams_skin/resources/js/myams.js	Fri Jul 20 12:39:53 2018 +0200
@@ -4979,11 +4979,13 @@
 		switchElementVisibility: function() {
 			return function() {
 				var source = $(this);
-				var element = source.parents('tr').first();
-				var container = element.parents('table');
-				ams.ajax.post(container.data('ams-location') + '/' +
-							  container.data('ams-visibility-switcher'),
-					{object_name: element.data('ams-element-name')},
+				var cell = source.parents('td').first();
+				var row = source.parents('tr').first();
+				var table = row.parents('table');
+				$('i', source).attr('class', 'fa fa-fw fa-spinner fa-pulse');
+				ams.ajax.post(table.data('ams-location') + '/' +
+							 (cell.data('ams-attribute-switcher') || table.data('ams-attribute-switcher')),
+					{object_name: row.data('ams-element-name')},
 					function(result, status) {
 						if (result.visible) {
 							$('i', source).attr('class', 'fa fa-fw fa-eye');
@@ -5004,14 +5006,15 @@
 				var attribute = cell.data('ams-switcher-attribute-name');
 				var row = source.parents('tr').first();
 				var table = row.parents('table');
+				$('i', source).attr('class', 'fa fa-fw fa-spinner fa-pulse');
 				ams.ajax.post(table.data('ams-location') + '/' +
 							  (cell.data('ams-attribute-switcher') || table.data('ams-attribute-switcher')),
 					{object_name: row.data('ams-element-name')},
 					function(result, status) {
-						if (result.on) {
-							$('i', source).attr('class', table.data('ams-' + attribute + '-icon-on') || 'fa fa-fw fa-eye');
+						if (result[attribute] || result['on']) {
+							$('i', source).attr('class', table.data('ams-' + attribute + '-icon-on') || 'fa fa-fw fa-check-square-o');
 						} else {
-							$('i', source).attr('class', table.data('ams-' + attribute + '-icon-off') || 'fa fa-fw fa-eye-slash text-danger');
+							$('i', source).attr('class', table.data('ams-' + attribute + '-icon-off') || 'fa fa-fw fa-check-square txt-color-silver opacity-75');
 						}
 					});
 			}