From 3d0c6e4865d4a0ddd764da533a327faf76e0cb32 Mon Sep 17 00:00:00 2001
From: Roberto Sánchez <roberto.sanchez@curisit.net>
Date: Fri, 10 Jan 2014 18:50:52 +0000
Subject: [PATCH] #394 feature - Catalog module finished in beta - Security and Error management are not completed

---
 securis/src/main/resources/static/js/admin.js |   29 ++++++++++++++++++-----------
 1 files changed, 18 insertions(+), 11 deletions(-)

diff --git a/securis/src/main/resources/static/js/admin.js b/securis/src/main/resources/static/js/admin.js
index 39ba6b4..4cde879 100644
--- a/securis/src/main/resources/static/js/admin.js
+++ b/securis/src/main/resources/static/js/admin.js
@@ -1,7 +1,7 @@
 (function() {
 	'use strict';
 
-	var app = angular.module('app', [ 'ngRoute', 'ngAnimate', 'ngResource', 'toaster', 'catalogs' ]);
+	var app = angular.module('app', [ 'ngRoute', 'ngResource', 'toaster', 'localytics.directives', 'catalogs' ]);
 
 	app.directive(
 					'catalogField',
@@ -35,7 +35,10 @@
 				$scope.catalogsList = null;
 				$scope.list = null;
 				
+				
 				var _changeCatalog = function(index) {
+					$scope.showForm = false;
+					$scope.formu = {};
 					if (!$scope.catalogsList) $scope.catalogsList = Catalogs.getList(); // catalog list is also in index.data
 					if (typeof index === 'number') $scope.catalogIndex = index;
 					Catalogs.setCurrent($scope.catalogIndex);
@@ -43,7 +46,6 @@
 					$scope.list = Catalogs.query();
 					$scope.refs = {}
 					Catalogs.loadRefs($scope.refs)
-					console.log($scope.refs)
 				}
 				
 				Catalogs.init().then(_changeCatalog); 
@@ -55,14 +57,14 @@
 					$scope.isNew = false;
 					$scope.formu = {}
 					for (var k in data) {
-						if (k.indexOf('$') !== 0) $scope.formu[k] = data[k]
+						if (k.indexOf('$') !== 0 && !Catalogs.getField(k).listingOnly) $scope.formu[k] = data[k]
 					}
-					console.log('$scope.edit')
-					console.log($scope.formu)
-					$('#'+ Catalogs.getFFF()).focus();
 
-					
+					setTimeout(function() {
+						$('#'+Catalogs.getFFF()).focus();
+					}, 0);
 				}
+
 				$scope.delete = function(data) {
 					BootstrapDialog.confirm('The record will be deleted, are you sure?', function(result){
 			            if(result) {
@@ -89,10 +91,12 @@
 					
 					if (field.readOnly && field.type === 'date')
 						return 'readonly_date';
-					if (field.readOnly)
+					if (field.readOnly && (!field.pk || !$scope.isNew ))
 						return 'readonly';
 					if (field.type === 'select')
 						return 'select';
+					if (field.type === 'multiselect')
+						return 'multiselect';
 					if (!field.multiline)
 						return 'normal';
 					if (field.multiline)
@@ -101,10 +105,13 @@
 				}
 				
 				$scope.editNew = function() {
-					$('#'+ Catalogs.getFFF()).focus();
-					$scope.$parent.showForm = true;
 					$scope.$parent.isNew = true;
+					$scope.$parent.showForm = true;
 					$scope.$parent.formu = {};
+					setTimeout(function() {
+						$('#'+Catalogs.getFFF()).focus();
+					}, 0);
+					
 				}
 				$scope.cancel = function() {
 					$scope.$parent.showForm = false;
@@ -139,7 +146,7 @@
 					var type = Catalogs.getField(name).type;
 					var printedValue = type === 'date' ? $filter('date')(value, 'yyyy-MM-dd') : value;
 					if (printedValue !== value) // this line is a work around to allow search in formatted fields
-						row['_display_'+name] = printedValue;
+						row['$display_'+name] = printedValue;
 					return printedValue;
 				}
 				

--
Gitblit v1.3.2