Files
gerrit/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.html
Becky Siegel 0a3be39524 Add ability to remove and add back permission in repo access
Bug: Issue 8033
Change-Id: Ib6290c8b50a7c085d0c37a0b268d2a043ecc2ade
2018-01-10 18:47:24 +00:00

129 lines
4.1 KiB
HTML

<!--
Copyright (C) 2017 The Android Open Source Project
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.
-->
<link rel="import" href="../../../bower_components/polymer/polymer.html">
<link rel="import" href="../../../behaviors/gr-access-behavior/gr-access-behavior.html">
<link rel="import" href="../../../styles/gr-form-styles.html">
<link rel="import" href="../../../styles/gr-menu-page-styles.html">
<link rel="import" href="../../../styles/shared-styles.html">
<link rel="import" href="../../shared/gr-autocomplete/gr-autocomplete.html">
<link rel="import" href="../../shared/gr-button/gr-button.html">
<link rel="import" href="../../shared/gr-rest-api-interface/gr-rest-api-interface.html">
<link rel="import" href="../gr-rule-editor/gr-rule-editor.html">
<dom-module id="gr-permission">
<template>
<style include="shared-styles">
:host {
display: block;
margin-bottom: .7em;
}
.header {
align-items: baseline;
display: flex;
justify-content: space-between;
margin: .3em .7em;
}
.rules {
background: #fafafa;
border: 1px solid #d1d2d3;
border-bottom: 0;
}
/* TODO @beckysiegel add back */
/* .editing .rules {
border-bottom: 1px solid #d1d2d3;
} */
.title {
margin-bottom: .3em;
}
#addRule,
#removeBtn {
display: none;
}
.editing #removeBtn {
display: block;
}
/* TODO @beckysiegel add back */
/* .editing #addRule {
display: block;
padding: .7em;
} */
#deletedContainer,
.deleted #mainContainer {
display: none;
}
.deleted #deletedContainer {
align-items: baseline;
border: 1px solid #d1d2d3;
display: flex;
justify-content: space-between;
padding: .7em;
}
#mainContainer {
display: block;
}
</style>
<style include="gr-form-styles"></style>
<style include="gr-menu-page-styles"></style>
<section
id="permission"
class$="gr-form-styles [[_computeSectionClass(editing, _deleted)]]">
<div id="mainContainer">
<div class="header">
<span class="title">[[name]]</span>
<gr-button
link
id="removeBtn"
on-tap="_handleRemovePermission">Remove</gr-button>
</div><!-- end header -->
<div class="rules">
<template
is="dom-repeat"
items="{{_rules}}"
as="rule">
<gr-rule-editor
label="[[_label]]"
editing="[[editing]]"
group-id="[[rule.id]]"
group-name="[[_computeGroupName(groups, rule.id)]]"
permission="[[permission.id]]"
rule="{{rule}}"
section="[[section]]"></gr-rule-editor>
</template>
<div id="addRule">
<gr-autocomplete
text="{{_groupFilter}}"
query="[[_query]]"
placeholder="Add group"
on-commit="_handleAddRuleItem">
</gr-autocomplete>
</div>
<!-- end addRule -->
</div> <!-- end rules -->
</div><!-- end mainContainer -->
<div id="deletedContainer">
<span>[[name]] was deleted</span>
<gr-button
link
id="undoRemoveBtn"
on-tap="_handleUndoRemove">Undo</gr-button>
</div><!-- end deletedContainer -->
</section>
<gr-rest-api-interface id="restAPI"></gr-rest-api-interface>
</template>
<script src="gr-permission.js"></script>
</dom-module>