google-nomulus/java/google/registry/ui/soy/registrar/AdminSettings.soy
guyben a3a60075a0 Hide the edit/add buttons for fields the user can't update
Currently the /registrar-settings backend endpoint will fail to update any
OWNER fields that a non-OWNER tries to change.

However, the front-end (soy, js) still allow non-OWNERs to try and change
these fields (there's the "edit" or "add" button, and it only fails when you try to "save")

This CL changes the front-end to remove the ability for non-OWNERs to even try
and change these fields. However, it will still let them *view* these fields as
it has interesting and important information.

-------------------------------

In addition - it changes the webdriver tests to include the "edit buttons". Those were never tested before, and now we will test to see if they are indeed displayed or not.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=223845883
2018-12-03 19:25:05 -05:00

64 lines
2.1 KiB
Text

// Copyright 2018 The Nomulus Authors. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
{namespace registry.soy.registrar.admin}
/** Registrar admin settings page for view and edit. */
{template .settings}
{@param allowedTlds: list<string>}
<form name="item" class="{css('item')} {css('registrar')}">
<h1>Administrator settings</h1>
<table>
<tr class="{css('kd-settings-pane-section')}">
<td>
<label class="{css('setting-label')}">Allowed TLDs</label>
<span class="{css('description')}">set or remove TLDs this
client is allowed access to.</span>
</td>
<td class="{css('setting')}">
<div class="{css('info')} {css('summary')}">
<div id="tlds">
{for $tld in $allowedTlds}
{call .tld}
{param name: 'allowedTlds[' + index($tld) + ']' /}
{param tld: $tld /}
{/call}
{/for}
</div>
<div class="{css('hidden')}">
<input id="newTld" value="" placeholder="Enter TLD"/>
<button id="btn-add-tld" type="button"
class="{css('kd-button')} {css('btn-add')}">Add</button>
</div>
</div>
</td>
</table>
</form>
{/template}
/** TLD form input. */
{template .tld}
{@param name: string}
{@param tld: string}
<div class="{css('tld')}">
<button type="button" class="{css('kd-button')} {css('btn-remove')} {css('hidden')}">
<i class="{css('icon-remove')} {css('edit')}">x</i>
</button>
<input name="{$name}" value="{$tld}" readonly>
</div>
{/template}