From a5ca1f4877058c63c6db1d7309add90795778e9f Mon Sep 17 00:00:00 2001 From: "totten@civicrm.org" Date: Fri, 27 Jun 2014 04:33:20 -0700 Subject: [PATCH] CRM-14798 - crmCaseType - Filter/validate caseType.name If the name is auto-generated, filter out invalid characters. If the name is manually-generated, emphasize errors. --- css/civicrm.css | 3 +++ js/angular-crmCaseType.js | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/css/civicrm.css b/css/civicrm.css index 54d1fb1088..c618104ea8 100644 --- a/css/civicrm.css +++ b/css/civicrm.css @@ -331,6 +331,9 @@ input.crm-form-entityref { filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#ffffff', endColorstr = '#eeeeee', GradientType = 0); background-image: linear-gradient(top, #fff 0%, #eee 50%); } +.crm-container input.crm-form-text.ng-invalid { + border: 1px solid #FF0000; +} .crm-container input.crm-form-text, .crm-container input.dateplugin { border: 1px solid #999; diff --git a/js/angular-crmCaseType.js b/js/angular-crmCaseType.js index 5ce47c855d..bf3e5d571e 100644 --- a/js/angular-crmCaseType.js +++ b/js/angular-crmCaseType.js @@ -251,7 +251,8 @@ var updateCaseTypeName = function () { if (!$scope.caseType.id && $scope.locks.caseTypeName) { // Should we do some filtering? Lowercase? Strip whitespace? - $scope.caseType.name = $scope.caseType.title; + var t = $scope.caseType.title ? $scope.caseType.title : ''; + $scope.caseType.name = t.replace(/ /g, '_').replace(/[^a-zA-Z0-9_]/g, '').toLowerCase(); } }; $scope.$watch('locks.caseTypeName', updateCaseTypeName); -- 2.25.1