Improvement: Permissions table (#14646)

pull/14493/head^2
Guilherme Gazzo 7 years ago committed by Diego Sampaio
parent 4474fc017d
commit 0617b3f355
  1. 72
      app/authorization/client/stylesheets/permissions.css
  2. 22
      app/authorization/client/views/permissions.html
  3. 12
      app/ui-message/client/messageBox/messageBox.js
  4. 8
      app/ui/client/lib/chatMessages.js

@ -1,4 +1,37 @@
.permissions-manager { .permissions-manager {
&.page-container {
padding-bottom: 0 !important;
}
.permission-edit {
display: flex;
flex-direction: column;
height: 100%;
padding: 10px;
align-items: center;
}
.permission-label,
.permission-icon {
display: flex;
align-items: flex-end;
flex-grow: 1;
}
.permission-icon {
width: 30px;
margin-bottom: 0;
flex-grow: 0;
}
.content {
padding: 0 !important;
}
.permission-grid { .permission-grid {
overflow-x: scroll; overflow-x: scroll;
@ -7,21 +40,29 @@
border-collapse: collapse; border-collapse: collapse;
.id-styler { .id-styler {
white-space: nowrap;
color: #7f7f7f; color: #7f7f7f;
font-size: smaller; font-size: smaller;
} }
.edit-icon.role-name-edit-icon {
height: 30px;
}
.role-name { .role-name {
position: sticky;
top: 0;
width: 70px; width: 70px;
height: 80px;
text-align: left; text-align: left;
vertical-align: middle; vertical-align: middle;
border-right: 1px solid black; background: white;
border-left: 1px solid black;
} }
.role-name-edit-icon { .role-name-edit-icon {
@ -31,16 +72,22 @@
text-align: center; text-align: center;
vertical-align: middle; vertical-align: middle;
border-right: 1px solid black;
border-left: 1px solid black;
} }
.rotator { .rotator {
width: 80px; overflow: hidden;
margin: 0 auto;
transform: rotate(-90deg); width: 30px;
height: 130px;
padding: 10px 0;
transform: rotate(-180deg);
white-space: nowrap;
text-overflow: ellipsis;
writing-mode: vertical-rl;
} }
.admin-table-row { .admin-table-row {
@ -58,16 +105,9 @@
vertical-align: middle; vertical-align: middle;
} }
.admin-table-row .permission-name {
border-top: 1px solid black;
border-bottom: 1px solid black;
}
.permission-checkbox { .permission-checkbox {
text-align: center; text-align: center;
vertical-align: middle; vertical-align: middle;
border: 1px solid black;
} }
.icon-edit { .icon-edit {

@ -13,23 +13,17 @@
<thead class="content-background-color"> <thead class="content-background-color">
<tr> <tr>
<th class="permission-name border-component-color"></th> <th class=" role-name permission-name border-component-color"></th>
{{#each role}} {{#each role}}
<th class="edit-icon role-name border-component-color" title="{{description}}"> <th class="edit-icon role-name border-component-color" title="{{description}}">
<a href="{{pathFor "admin-permissions-edit" name=_id}}"> <a class="permission-edit" href="{{pathFor "admin-permissions-edit" name=_id}}">
<p class = "rotator"> <p class="permission-label">
{{_id}} <div class = "rotator">
{{_id}}
</div>
</p> </p>
</a>
</th> <p class="permission-icon">
{{/each}}
</tr>
<tr>
<th class="permission-name border-component-color"></th>
{{#each role}}
<th class="edit-icon role-name-edit-icon border-component-color" title="{{description}}">
<a href="{{pathFor "admin-permissions-edit" name=_id}}">
<p>
<i class="icon-edit"></i> <i class="icon-edit"></i>
</p> </p>
</a> </a>

@ -265,6 +265,15 @@ const handleFormattingShortcut = (event, instance) => {
return true; return true;
}; };
let sendOnEnter;
let sendOnEnterActive;
Tracker.autorun(() => {
sendOnEnter = getUserPreference(Meteor.userId(), 'sendOnEnter');
sendOnEnterActive = sendOnEnter == null || sendOnEnter === 'normal'
|| (sendOnEnter === 'desktop' && Meteor.Device.isDesktop());
});
const handleSubmit = (event, instance) => { const handleSubmit = (event, instance) => {
const { which: keyCode } = event; const { which: keyCode } = event;
@ -274,9 +283,6 @@ const handleSubmit = (event, instance) => {
return false; return false;
} }
const sendOnEnter = getUserPreference(Meteor.userId(), 'sendOnEnter');
const sendOnEnterActive = sendOnEnter == null || sendOnEnter === 'normal'
|| (sendOnEnter === 'desktop' && Meteor.Device.isDesktop());
const withModifier = event.shiftKey || event.ctrlKey || event.altKey || event.metaKey; const withModifier = event.shiftKey || event.ctrlKey || event.altKey || event.metaKey;
const isSending = (sendOnEnterActive && !withModifier) || (!sendOnEnterActive && withModifier); const isSending = (sendOnEnterActive && !withModifier) || (!sendOnEnterActive && withModifier);

@ -249,8 +249,8 @@ export class ChatMessages {
messageBoxState.save({ rid, tmid }, this.input); messageBoxState.save({ rid, tmid }, this.input);
let msg = value; let msg = value.trim();
if (value.trim()) { if (msg) {
const mention = this.$input.data('mention-user') || false; const mention = this.$input.data('mention-user') || false;
const replies = this.$input.data('reply') || []; const replies = this.$input.data('reply') || [];
if (!mention || !threadsEnabled) { if (!mention || !threadsEnabled) {
@ -260,8 +260,6 @@ export class ChatMessages {
if (mention && threadsEnabled && replies.length) { if (mention && threadsEnabled && replies.length) {
tmid = replies[0]._id; tmid = replies[0]._id;
} }
} else {
msg = '';
} }
if (msg) { if (msg) {
@ -280,7 +278,6 @@ export class ChatMessages {
await this.processMessageSend(message); await this.processMessageSend(message);
this.$input.removeData('reply').trigger('dataChange'); this.$input.removeData('reply').trigger('dataChange');
} catch (error) { } catch (error) {
console.error(error);
handleError(error); handleError(error);
} }
return done(); return done();
@ -299,7 +296,6 @@ export class ChatMessages {
this.resetToDraft(this.editing.id); this.resetToDraft(this.editing.id);
this.confirmDeleteMsg(message, done); this.confirmDeleteMsg(message, done);
} catch (error) { } catch (error) {
console.error(error);
handleError(error); handleError(error);
} }
} }

Loading…
Cancel
Save