Credentials add\/edit now works. Ask checkbox is functional.

This commit is contained in:
chouseknecht
2013-05-10 04:09:28 -04:00
parent fdceb46c12
commit 0ff66f668d
6 changed files with 93 additions and 10 deletions

View File

@@ -190,12 +190,26 @@ function CredentialsAdd ($scope, $rootScope, $compile, $location, $log, $routePa
generator.reset();
};
// Password change
// Password change
scope.clearPWConfirm = function(fld) {
// If password value changes, make sure password_confirm must be re-entered
scope[fld] = '';
scope[form.name + '_form'][fld].$setValidity('awpassmatch', false);
}
// Respond to 'Ask at runtime?' checkbox
scope.ask = function(fld, associated) {
if (scope[fld + '_ask']) {
scope[fld] = 'ASK';
scope[associated] = '';
scope[form.name + '_form'][associated].$setValidity('awpassmatch', true);
}
else {
scope[fld] = '';
scope[associated] = '';
scope[form.name + '_form'][associated].$setValidity('awpassmatch', true);
}
}
}
CredentialsAdd.$inject = [ '$scope', '$rootScope', '$compile', '$location', '$log', '$routeParams', 'CredentialForm', 'GenerateForm',
@@ -236,6 +250,21 @@ function CredentialsEdit ($scope, $rootScope, $compile, $location, $log, $routeP
list: TeamList,
field: 'team'
});
function setAskCheckboxes() {
for (var fld in form.fields) {
if (form.fields[fld].type == 'password' && form.fields[fld].ask && scope[fld] == 'ASK') {
// turn on 'ask' checkbox for password fields with value of 'ASK'
$("#" + fld + "-clear-btn").attr("disabled","disabled");
scope[fld + '_ask'] = true;
}
else {
scope[fld + '_ask'] = false;
$("#" + fld + "-clear-btn").removeAttr("disabled");
}
}
}
// After Credential is loaded, retrieve each related set and any lookups
scope.$on('credentialLoaded', function() {
@@ -260,6 +289,7 @@ function CredentialsEdit ($scope, $rootScope, $compile, $location, $log, $routeP
master[form.fields[fld].sourceModel + '_' + form.fields[fld].sourceField] =
scope[form.fields[fld].sourceModel + '_' + form.fields[fld].sourceField];
}
setAskCheckboxes();
}
var related = data.related;
for (var set in form.related) {
@@ -288,7 +318,7 @@ function CredentialsEdit ($scope, $rootScope, $compile, $location, $log, $routeP
Rest.put(data)
.success( function(data, status, headers, config) {
var base = $location.path().replace(/^\//,'').split('/')[0];
(base == 'Credentials') ? ReturnToCaller() : ReturnToCaller(1);
(base == 'credentials') ? ReturnToCaller() : ReturnToCaller(1);
})
.error( function(data, status, headers, config) {
ProcessErrors(scope, data, status, form,
@@ -302,6 +332,7 @@ function CredentialsEdit ($scope, $rootScope, $compile, $location, $log, $routeP
for (var fld in master) {
scope[fld] = master[fld];
}
setAskCheckboxes();
};
// Related set: Add button
@@ -348,6 +379,28 @@ function CredentialsEdit ($scope, $rootScope, $compile, $location, $log, $routeP
scope[fld] = '';
scope[form.name + '_form'][fld].$setValidity('awpassmatch', false);
}
// Respond to 'Ask at runtime?' checkbox
scope.ask = function(fld, associated) {
if (scope[fld + '_ask']) {
$("#" + fld + "-clear-btn").attr("disabled","disabled");
scope[fld] = 'ASK';
scope[associated] = '';
scope[form.name + '_form'][associated].$setValidity('awpassmatch', true);
}
else {
$("#" + fld + "-clear-btn").removeAttr("disabled");
scope[fld] = '';
scope[associated] = '';
scope[form.name + '_form'][associated].$setValidity('awpassmatch', true);
}
}
scope.clear = function(fld, associated) {
scope[fld] = '';
scope[associated] = '';
scope[form.name + '_form'][associated].$setValidity('awpassmatch', true);
}
}