webui: do not offer ipa users to Default Trust View

https://fedorahosted.org/freeipa/ticket/4616

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
This commit is contained in:
Petr Vobornik 2014-10-10 10:50:56 +02:00
parent 01a9e7ef9e
commit df1ed11b48
5 changed files with 63 additions and 4 deletions

View File

@ -148,6 +148,12 @@
"aci.permission_managed_policy"
]
},
{
"name": "Dialog policies",
"classes": [
"idviews.idoverride_adder_policy"
]
},
{
"name": "Evaluators & Summaries",
"classes": [

View File

@ -198,7 +198,7 @@ IPA.entity_adder_dialog = function(spec) {
var field = fields[j];
var values = record[field.param];
if (!values || values.length === 0) continue;
if (!values || values.length === 0 || !field.enabled) continue;
if (field.flags.indexOf('no_command') > -1) continue;
if (field.param === pkey_name) {

View File

@ -20,6 +20,7 @@
*/
define([
'dojo/on',
'./ipa',
'./jquery',
'./menu',
@ -31,7 +32,7 @@ define([
'./facet',
'./search',
'./entity'],
function(IPA, $, menu, phases, reg, rpc, text, mod_details, mod_facet) {
function(on, IPA, $, menu, phases, reg, rpc, text, mod_details, mod_facet) {
/**
* ID Views module
* @class
@ -268,6 +269,9 @@ return {
],
adder_dialog: {
policies: [
{ $factory: idviews.idoverride_adder_policy }
],
fields: [
{
$type: 'entity_select',
@ -278,6 +282,14 @@ return {
editable: true,
tooltip: '@i18n:objects.idoverrideuser.anchor_tooltip'
},
{
label: '@i18n:objects.idoverrideuser.anchor_label',
name: 'ipaanchoruuid_default',
param: 'ipaanchoruuid',
tooltip: '@i18n:objects.idoverrideuser.anchor_tooltip_ad',
visible: false,
enabled: false
},
'uid',
'gecos',
'uidnumber',
@ -341,6 +353,9 @@ return {
],
adder_dialog: {
policies: [
{ $factory: idviews.idoverride_adder_policy }
],
fields: [
{
$type: 'entity_select',
@ -351,6 +366,14 @@ return {
editable: true,
tooltip: '@i18n:objects.idoverridegroup.anchor_tooltip'
},
{
label: '@i18n:objects.idoverridegroup.anchor_label',
name: 'ipaanchoruuid_default',
param: 'ipaanchoruuid',
tooltip: '@i18n:objects.idoverridegroup.anchor_tooltip_ad',
visible: false,
enabled: false
},
'cn',
'gidnumber',
{
@ -405,6 +428,32 @@ idviews.idview_facet_header = function(spec) {
return that;
};
/**
* Switches between combobox and textbox for ipaanchoruuid, depending on if
* current view is Default Trust View
* @class idviews.idoverride_adder_policy
* @extends IPA.facet_policy
*/
idviews.idoverride_adder_policy = function (spec) {
var that = IPA.facet_policy(spec);
that.init = function() {
on(that.container, 'open', that.on_open);
};
that.on_open = function() {
var d = that.container; // dialog
var default_view = d.pkey_prefix.slice(-1)[0] === idviews.DEFAULT_TRUST_VIEW;
var f1 = d.fields.get_field('ipaanchoruuid');
var f2 = d.fields.get_field('ipaanchoruuid_default');
f1.set_enabled(!default_view);
f1.widget.set_visible(!default_view);
f2.set_enabled(default_view);
f2.widget.set_visible(default_view);
};
return that;
};
/**
* Apply Id view on hosts on hostgroup action base class
*

View File

@ -373,11 +373,13 @@
},
"idoverrideuser": {
"anchor_label": "User to override",
"anchor_tooltip": "Enter trusted or IPA user login. Note: search doesn't list users from trusted domains."
"anchor_tooltip": "Enter trusted or IPA user login. Note: search doesn't list users from trusted domains.",
"anchor_tooltip_ad": "Enter trusted user login."
},
"idoverridegroup": {
"anchor_label": "Group to override",
"anchor_tooltip": "Enter trusted or IPA group name. Note: search doesn't list groups from trusted domains."
"anchor_tooltip": "Enter trusted or IPA group name. Note: search doesn't list groups from trusted domains.",
"anchor_tooltip_ad": "Enter trusted group name."
},
"idview": {
"appliesto_tab": "${primary_key} applies to:",

View File

@ -518,10 +518,12 @@ class i18n_messages(Command):
"idoverrideuser": {
"anchor_label": _("User to override"),
"anchor_tooltip": _("Enter trusted or IPA user login. Note: search doesn't list users from trusted domains."),
"anchor_tooltip_ad": _("Enter trusted user login."),
},
"idoverridegroup": {
"anchor_label": _("Group to override"),
"anchor_tooltip": _("Enter trusted or IPA group name. Note: search doesn't list groups from trusted domains."),
"anchor_tooltip_ad": _("Enter trusted group name."),
},
"idview": {
"appliesto_tab": _("${primary_key} applies to:"),