Updated Branches: refs/heads/master 151fc3e83 -> 9c9724d47
Extended UI field defaultValue (and isChecked) to allow for functions not just literals. Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/9c9724d4 Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/9c9724d4 Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/9c9724d4 Branch: refs/heads/master Commit: 9c9724d470f9dfc6cda9c3dd38fa225bfb661411 Parents: 151fc3e Author: Chris Suich <[email protected]> Authored: Wed Jul 31 13:50:29 2013 -0400 Committer: Brian Federle <[email protected]> Committed: Wed Aug 14 10:27:04 2013 -0700 ---------------------------------------------------------------------- ui/scripts/sharedFunctions.js | 6 ++++++ ui/scripts/ui/dialog.js | 10 +++++----- 2 files changed, 11 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cloudstack/blob/9c9724d4/ui/scripts/sharedFunctions.js ---------------------------------------------------------------------- diff --git a/ui/scripts/sharedFunctions.js b/ui/scripts/sharedFunctions.js index 8ddaeaf..2fab2e5 100644 --- a/ui/scripts/sharedFunctions.js +++ b/ui/scripts/sharedFunctions.js @@ -1453,3 +1453,9 @@ cloudStack.api = { }; } }; + +function strOrFunc(arg, args) { + if (typeof arg === 'function') + return arg(args); + return arg; +} http://git-wip-us.apache.org/repos/asf/cloudstack/blob/9c9724d4/ui/scripts/ui/dialog.js ---------------------------------------------------------------------- diff --git a/ui/scripts/ui/dialog.js b/ui/scripts/ui/dialog.js index e227ea4..cee7873 100644 --- a/ui/scripts/ui/dialog.js +++ b/ui/scripts/ui/dialog.js @@ -264,7 +264,7 @@ }); if (field.defaultValue) { - $input.val(_s(field.defaultValue)); + $input.val(_s(strOrFunc(field.defaultValue, args.data))); } $input.trigger('change'); @@ -367,7 +367,7 @@ type: 'checkbox' }).appendTo($value); if (field.isChecked) { - $input.attr('checked', 'checked'); + $input.attr('checked', strOrFunc(field.isChecked)); } else { // This is mainly for IE compatibility setTimeout(function() { @@ -421,7 +421,7 @@ }).appendTo($value); if (field.defaultValue) { - $input.val(field.defaultValue); + $input.val(strOrFunc(field.defaultValue)); } } else if (field.isDatepicker) { //jQuery datepicker $input = $('<input>').attr({ @@ -430,7 +430,7 @@ }).appendTo($value); if (field.defaultValue) { - $input.val(field.defaultValue); + $input.val(strOrFunc(field.defaultValue)); } if (field.id) { $input.attr('id', field.id); @@ -525,7 +525,7 @@ }).appendTo($value); if (field.defaultValue) { - $input.val(field.defaultValue); + $input.val(strOrFunc(field.defaultValue)); } if (field.id) { $input.attr('id', field.id);
