Cleanup more HTML and CSS

This commit is contained in:
djmaze 2021-09-09 17:00:31 +02:00
parent e105ecdf1b
commit 371b23a2f3
22 changed files with 306 additions and 435 deletions

View file

@ -86,10 +86,10 @@ export class AccountsUserSettings {
onBuild(oDom) {
oDom.addEventListener('click', event => {
let el = event.target.closestWithin('.accounts-list .account-item .e-action', oDom);
let el = event.target.closestWithin('.accounts-list .e-action', oDom);
el && ko.dataFor(el) && this.editAccount(ko.dataFor(el));
el = event.target.closestWithin('.identities-list .identity-item .e-action', oDom);
el = event.target.closestWithin('.identities-list .e-action', oDom);
el && ko.dataFor(el) && this.editIdentity(ko.dataFor(el));
});
}

View file

@ -1,57 +1,47 @@
.b-settings-accounts {
.list-table {
.account-img, .identity-img {
font-size: 12px;
margin-right: 5px;
}
.account-name {
display: inline-block;
word-break: break-all;
box-sizing: border-box;
line-height: 22px;
}
.identity-default {
cursor: pointer;
color: #ccc;
}
.identity-name {
display: inline-block;
word-break: break-all;
box-sizing: border-box;
line-height: 22px;
cursor: pointer;
}
}
.accounts-list-top-padding, .identities-list-top-padding {
.account-name {
display: inline-block;
height: 5px;
width: 5px;
word-break: break-all;
}
.account-item {
.identity-default {
cursor: pointer;
color: #ccc;
}
.identity-name {
display: inline-block;
word-break: break-all;
cursor: pointer;
}
table {
margin-top: 1em;
}
tr {
white-space: nowrap;
.delete-account {
cursor: pointer;
opacity: 0.5;
}
}
.identity-item {
white-space: nowrap;
.delete-identity {
cursor: pointer;
opacity: 0.5;
}
td + td {
width: 150px;
}
td + td + td {
width: 1%;
}
.delete {
cursor: pointer;
opacity: 0.5;
}
.identity-default::before {
content: '(';
}
.identity-default::after {
content: ')';
}
}

View file

@ -5,34 +5,34 @@
margin: 10px 0;
}
.list-table {
table {
margin-top: 1em;
.folder-padding {
display: inline-block;
width: 0;
}
.folder-name {
display: inline-block;
word-break: break-all;
white-space: pre-wrap;
box-sizing: border-box;
margin-left: 7px;
}
.folder-system-name {
display: inline-block;
opacity: 0.6;
}
.folder-name.can-be-edited:hover {
text-decoration-style: dashed;
cursor: pointer;
}
}
.folder-item {
td + td {
width: 1em;
}
table:not(.displaySpecSetting) td:last-child {
display: none;
}
.folder-name {
word-break: break-all;
white-space: pre-wrap;
box-sizing: border-box;
}
.folder-system-name {
opacity: 0.6;
}
.folder-name.can-be-edited:hover {
text-decoration-style: dashed;
cursor: pointer;
}
tr {
&:not(.selectable) {
font-style: italic;
@ -59,19 +59,19 @@
}
}
.folder-padding.deep-1 {
width: 25px;
.deep-1 {
text-indent: 15px;
}
.folder-padding.deep-2 {
width: 40px;
.deep-2 {
text-indent: 30px;
}
.folder-padding.deep-3 {
width: 55px;
.deep-3 {
text-indent: 45px;
}
.folder-padding.deep-4 {
width: 70px;
.deep-4 {
text-indent: 60px;
}
.folder-padding.deep-5 {
width: 85px;
.deep-5 {
text-indent: 75px;
}
}

View file

@ -1,32 +1,20 @@
.b-settings-templates {
.list-table {
.template-img {
font-size: 12px;
margin-right: 5px;
}
.template-name {
display: inline-block;
word-break: break-all;
box-sizing: border-box;
line-height: 22px;
}
.template-img {
font-size: 12px;
margin-right: 5px;
}
.templates-list-top-padding {
.template-name {
box-sizing: border-box;
display: inline-block;
height: 5px;
width: 5px;
line-height: 22px;
word-break: break-all;
}
.template-item {
.delete-template {
cursor: pointer;
opacity: 0.5;
}
.delete-template {
cursor: pointer;
opacity: 0.5;
}
}

View file

@ -32,19 +32,15 @@
}
.audioPlace {
cursor: pointer;
display: inline-block;
font-size: 30px;
height: 30px;
margin-right: 10px;
width: 1em;
.playIcon, .stopIcon {
cursor: pointer;
color: orange;
text-shadow: 0 1px 0 #555;
}
.stopIcon {
color: orange;
display: none;
}
@ -93,60 +89,34 @@
}
}
@keyframes firstBar {
0% { height: 30%; }
50% { height: 100%; }
100% { height: 30%; }
@keyframes equaliserBar {
0% { top: 30%; }
50% { top: 100%; }
100% { top: 30%; }
}
@keyframes secondBar {
0% { height: 90%; }
50% { height: 30%; }
100% { height: 100%; }
}
@keyframes thirdBar {
0% { height: 20%; }
40% { height: 40%; }
60% { height: 80%; }
100% { height: 40%; }
}
.equaliser {
.playIcon {
margin-top: 5px;
width: 30px;
height: 20px;
position: relative;
.bar {
width: 5px;
height: 5px;
*, &::before, &::after {
animation: equaliserBar 1s infinite;
background: orange;
position: absolute;
bottom:0;
animation: none;
}
.first {
left: calc(1em / 2 - 10px);
}
.second {
left: calc(1em / 2 - 2px);
}
.third {
left: calc(1em / 2 + 6px);
position: absolute;
width: 5px;
content: '';
}
&.animated {
.first {
animation: firstBar 1s infinite;
}
.second {
animation: secondBar 1s infinite;
}
.third {
animation: thirdBar 1s infinite;
}
&::before {
left: calc(1em / 2 - 9px);
animation-delay: -0.33s;
}
&::after {
left: calc(1em / 2 + 5px);
animation-delay: -0.66s;
}
}

View file

@ -3,43 +3,37 @@
<div class="legend" data-i18n="TAB_BRANDING/LEGEND_BRANDING"></div>
<div class="control-group">
<label class="control-label" data-i18n="TAB_BRANDING/LABEL_PAGE_TITLE"></label>
<div class="controls">
<div data-bind="component: {
name: 'Input',
params: {
value: title,
trigger: title.trigger,
size: 5
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Input',
params: {
value: title,
trigger: title.trigger,
size: 5
}
}"></div>
</div>
<div class="control-group">
<label class="control-label" data-i18n="TAB_BRANDING/LABEL_LOADING_DESCRIPTION"></label>
<div class="controls">
<div data-bind="component: {
name: 'Input',
params: {
value: loadingDesc,
trigger: loadingDesc.trigger,
size: 5
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Input',
params: {
value: loadingDesc,
trigger: loadingDesc.trigger,
size: 5
}
}"></div>
</div>
<div class="control-group">
<label class="control-label" data-i18n="TAB_BRANDING/LABEL_FAVICON_URL"></label>
<div class="controls">
<div data-bind="component: {
name: 'Input',
params: {
value: faviconUrl,
trigger: faviconUrl.trigger,
placeholder: 'https://',
size: 5
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Input',
params: {
value: faviconUrl,
trigger: faviconUrl.trigger,
placeholder: 'https://',
size: 5
}
}"></div>
</div>
</div>
</div>

View file

@ -3,16 +3,14 @@
<div class="legend" data-i18n="TAB_LOGIN/LEGEND_LOGIN_SCREEN"></div>
<div class="control-group">
<label class="control-label" data-i18n="TAB_LOGIN/LABEL_DEFAULT_DOMAIN"></label>
<div class="controls">
<div data-bind="component: {
name: 'Input',
params: {
value: defaultDomain,
trigger: defaultDomain.trigger,
size: 3
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Input',
params: {
value: defaultDomain,
trigger: defaultDomain.trigger,
size: 3
}
}"></div>
</div>
<div class="control-group">
<div class="controls">

View file

@ -140,15 +140,13 @@
</label>
<div class="tab-content" role="tabpanel" aria-hidden="true">
<div class="row">
<div class="span5">
<div data-bind="component: {
name: 'Checkbox',
params: {
label: 'POPUPS_DOMAIN/LABEL_ALLOW_SIEVE_SCRIPTS',
value: useSieve
}
}"></div>
</div>
<div class="span5" data-bind="component: {
name: 'Checkbox',
params: {
label: 'POPUPS_DOMAIN/LABEL_ALLOW_SIEVE_SCRIPTS',
value: useSieve
}
}"></div>
</div>
<div data-bind="visible: useSieve">
<div class="row">

View file

@ -21,18 +21,16 @@
</div>
<div class="control-group">
<label class="control-label" data-i18n="POPUPS_DOMAIN_ALIAS/LABEL_DOMAIN"></label>
<div class="controls">
<div data-bind="component: {
name: 'Select',
params: {
options: domainsOptions,
value: alias,
optionsText: 'optText',
optionsValue: 'optValue',
size: 4
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Select',
params: {
options: domainsOptions,
value: alias,
optionsText: 'optText',
optionsValue: 'optValue',
size: 4
}
}"></div>
</div>
</div>
<div class="modal-footer">

View file

@ -40,17 +40,15 @@
<div class="span4">
<div class="control-group">
<label class="control-label" data-i18n="SEARCH/LABEL_ADV_DATE"></label>
<div class="controls">
<div data-bind="component: {
name: 'Select',
params: {
options: selectedDates,
value: selectedDateValue,
optionsText: 'name',
optionsValue: 'id'
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Select',
params: {
options: selectedDates,
value: selectedDateValue,
optionsText: 'name',
optionsValue: 'id'
}
}"></div>
</div>
<div class="control-group">
<label class="control-label">

View file

@ -68,15 +68,13 @@
<hr />
<div class="form-horizontal">
<div class="control-group g-ui-user-select-none">
<div class="controls">
<div data-bind="component: {
name: 'Checkbox',
params: {
label: 'POPUPS_IDENTITY/LABEL_SIGNATURE_INSERT_BEFORE',
value: signatureInsertBefore
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Checkbox',
params: {
label: 'POPUPS_IDENTITY/LABEL_SIGNATURE_INSERT_BEFORE',
value: signatureInsertBefore
}
}"></div>
</div>
<div class="control-group">
<div class="e-signature-place" data-bind="editor: signature"></div>

View file

@ -9,75 +9,48 @@
<i class="icon-user-add"></i>
<span data-i18n="SETTINGS_ACCOUNTS/BUTTON_ADD_ACCOUNT"></span>
</a>
<br />
<br />
<br />
<div>
<div class="accounts-list-top-padding"></div>
<table class="table table-hover list-table accounts-list" data-bind="i18nUpdate: accounts">
<colgroup>
<col />
<col style="width: 150px" />
<col style="width: 1%" />
</colgroup>
<tbody data-bind="foreach: accounts">
<tr class="account-item" draggable="true" data-bind="sortableItem: { list: $root.accounts, afterMove: $root.accountsAndIdentitiesAfterMove }">
<td class="e-action" data-bind="css: {'e-action': canBeEdit}">
<span class="account-img fontastic">👤</span>
<i class="fontastic drag-handle"></i>
<span class="account-name" data-bind="text: email"></span>
</td>
<td>
<a class="btn btn-small btn-small-small btn-danger pull-right button-confirm-delete button-delete-transitions" data-bind="visible: canBeDeleted, css: {'delete-access': deleteAccess}, click: function(oAccount) { $root.deleteAccount(oAccount); }"
data-i18n="GLOBAL/ARE_YOU_SURE"></a>
</td>
<td>
<span class="delete-account fontastic" data-bind="visible: !deleteAccess() && canBeDeleted(), click: function (oAccount) { $root.accountForDeletion(oAccount); }">🗑</span>
</td>
</tr>
</tbody>
</table>
</div>
<table class="table table-hover list-table accounts-list" data-bind="i18nUpdate: accounts">
<tbody data-bind="foreach: accounts">
<tr draggable="true" data-bind="sortableItem: { list: $root.accounts, afterMove: $root.accountsAndIdentitiesAfterMove }">
<td class="e-action" data-bind="css: {'e-action': canBeEdit}">
<i class="fontastic drag-handle"></i>
<span class="account-name" data-bind="text: email"></span>
</td>
<td>
<a class="btn btn-small btn-small-small btn-danger pull-right button-confirm-delete button-delete-transitions" data-bind="visible: canBeDeleted, css: {'delete-access': deleteAccess}, click: function(oAccount) { $root.deleteAccount(oAccount); }"
data-i18n="GLOBAL/ARE_YOU_SURE"></a>
</td>
<td>
<span class="delete fontastic" data-bind="visible: !deleteAccess() && canBeDeleted(), click: function (oAccount) { $root.accountForDeletion(oAccount); }">🗑</span>
</td>
</tr>
</tbody>
</table>
</div>
<div data-bind="visible: allowIdentities">
<br />
<div class="legend" data-i18n="SETTINGS_ACCOUNTS/LEGEND_IDENTITIES"></div>
<a class="btn" data-bind="click: addNewIdentity">
<i class="icon-user-add"></i>
<span data-i18n="SETTINGS_ACCOUNTS/BUTTON_ADD_IDENTITY"></span>
</a>
<br />
<br />
<br />
<div>
<div class="identities-list-top-padding"></div>
<table class="table table-hover list-table identities-list" data-bind="i18nUpdate: identities">
<colgroup>
<col />
<col style="width: 150px" />
<col style="width: 1%" />
</colgroup>
<tbody data-bind="foreach: identities">
<tr class="identity-item" draggable="true" data-bind="sortableItem: { list: $root.identities, afterMove: $root.accountsAndIdentitiesAfterMove }">
<td class="e-action">
<span class="identity-img fontastic">👤</span>
<i class="fontastic drag-handle"></i>
<span class="identity-name" data-bind="text: formattedName()"></span>
&nbsp;&nbsp;
<span class="identity-default" data-bind="visible: 0 === $index()">
(<span data-i18n="SETTINGS_ACCOUNTS/DEFAULT_IDENTITY_LABEL"></span>)
</span>
</td>
<td>
<a class="btn btn-small btn-small-small btn-danger pull-right button-confirm-delete button-delete-transitions" data-bind="visible: canBeDeleted, css: {'delete-access': deleteAccess}, click: function(oIdentity) { $root.deleteIdentity(oIdentity); }"
data-i18n="GLOBAL/ARE_YOU_SURE"></a>
</td>
<td>
<span class="delete-identity fontastic" data-bind="visible: !deleteAccess() && canBeDeleted(), click: function (oIdentity) { $root.identityForDeletion(oIdentity); }">🗑</span>
</td>
</tr>
</tbody>
</table>
</div>
<table class="table table-hover list-table identities-list" data-bind="i18nUpdate: identities">
<tbody data-bind="foreach: identities">
<tr draggable="true" data-bind="sortableItem: { list: $root.identities, afterMove: $root.accountsAndIdentitiesAfterMove }">
<td class="e-action">
<i class="fontastic drag-handle"></i>
<span class="identity-name" data-bind="text: formattedName()"></span>
&nbsp;&nbsp;
<span class="identity-default" data-bind="visible: 0 === $index()" data-i18n="SETTINGS_ACCOUNTS/DEFAULT_IDENTITY_LABEL"></span>
</td>
<td>
<a class="btn btn-small btn-small-small btn-danger pull-right button-confirm-delete button-delete-transitions" data-bind="visible: canBeDeleted, css: {'delete-access': deleteAccess}, click: function(oIdentity) { $root.deleteIdentity(oIdentity); }"
data-i18n="GLOBAL/ARE_YOU_SURE"></a>
</td>
<td>
<span class="delete fontastic" data-bind="visible: !deleteAccess() && canBeDeleted(), click: function (oIdentity) { $root.identityForDeletion(oIdentity); }">🗑</span>
</td>
</tr>
</tbody>
</table>
</div>
</div>

View file

@ -2,30 +2,26 @@
<div class="form-horizontal g-ui-user-select-none">
<div class="legend" data-i18n="GLOBAL/CONTACTS"></div>
<div class="control-group">
<div class="controls">
<div data-bind="component: {
name: 'Checkbox',
params: {
label: 'SETTINGS_CONTACTS/LABEL_CONTACTS_AUTOSAVE',
value: contactsAutosave
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Checkbox',
params: {
label: 'SETTINGS_CONTACTS/LABEL_CONTACTS_AUTOSAVE',
value: contactsAutosave
}
}"></div>
</div>
</div>
<br />
<div class="form-horizontal" data-bind="visible: allowContactsSync">
<div class="legend" data-i18n="SETTINGS_CONTACTS/LEGEND_CONTACTS_SYNC"></div>
<div class="control-group">
<div class="controls">
<div data-bind="component: {
name: 'Checkbox',
params: {
label: 'SETTINGS_CONTACTS/LABEL_CONTACTS_SYNC_ENABLE',
value: enableContactsSync
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Checkbox',
params: {
label: 'SETTINGS_CONTACTS/LABEL_CONTACTS_SYNC_ENABLE',
value: enableContactsSync
}
}"></div>
</div>
<div class="control-group">
<label class="control-label" data-i18n="SETTINGS_CONTACTS/LABEL_CONTACTS_SYNC_AB_URL"></label>

View file

@ -1,11 +1,9 @@
<div class="control-group" data-bind="css: {'error': actionValueError}" style="margin-bottom: 0">
<div class="controls">
<div data-bind="component: {
name: 'Checkbox',
params: {
label: 'POPUPS_FILTER/STOP_LABEL',
value: actionNoStop
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Checkbox',
params: {
label: 'POPUPS_FILTER/STOP_LABEL',
value: actionNoStop
}
}"></div>
</div>

View file

@ -1,15 +1,13 @@
<div class="control-group" style="margin-bottom: 0">
<div class="controls">
<div data-bind="component: {
name: 'Select',
params: {
options: [1, 2, 3, 7, 30],
label: 'POPUPS_FILTER/REPLY_INTERVAL_LABEL',
value: actionValueThird,
size: 1
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Select',
params: {
options: [1, 2, 3, 7, 30],
label: 'POPUPS_FILTER/REPLY_INTERVAL_LABEL',
value: actionValueThird,
size: 1
}
}"></div>
</div>
<div class="control-group" data-bind="css: {'error': actionValueFourthError}" style="margin-bottom: 0">
<div class="controls">
@ -31,13 +29,11 @@
</div>
</div>
<div class="control-group">
<div class="controls">
<div data-bind="component: {
name: 'Checkbox',
params: {
label: 'POPUPS_FILTER/STOP_LABEL',
value: actionNoStop
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Checkbox',
params: {
label: 'POPUPS_FILTER/STOP_LABEL',
value: actionNoStop
}
}"></div>
</div>

View file

@ -1,6 +1,5 @@
<tr class="folder-item" data-bind="css: { 'selectable': selectable, 'system': isSystemFolder }">
<td>
<span class="folder-padding" data-bind="css: 'deep-' + deep"></span>
<tr data-bind="css: { 'selectable': selectable, 'system': isSystemFolder }">
<td data-bind="css: 'deep-' + deep">
<span class="folder-name" data-bind="text: name, visible: !edited(), css: { 'can-be-edited': canBeEdited }, click: function (oFolder) { oFolder.canBeEdited() && $root.folderForEdit(oFolder); }"></span>
<input type="text"
autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"
@ -16,7 +15,7 @@
<td data-i18n="[title]SETTINGS_FOLDERS/HELP_SHOW_HIDE_FOLDER">
<span class="e-action fontastic" data-bind="css: {'unsubscribed-folder':!subscribed()}, visible: canBeSubscribed(), click: function(oFolder) { $root.toggleFolderSubscription(oFolder); }">👁</span>
</td>
<td data-bind="visible: $root.displaySpecSetting" data-i18n="[title]SETTINGS_FOLDERS/HELP_CHECK_FOR_NEW_MESSAGES">
<td data-i18n="[title]SETTINGS_FOLDERS/HELP_CHECK_FOR_NEW_MESSAGES">
<span class="e-action" data-bind="css: {'check-folder':checkable(), 'unchecked-folder':!checkable()}, visible: canBeSelected() && subscribed(), click: function(oFolder) { $root.toggleFolderCheckable(oFolder); }">
<i class="icon-check-mark-circle-two"></i>
</span>

View file

@ -29,13 +29,7 @@
<button type="button" class="close" data-bind="click: function () { folderListError(''); }">×</button>
<span data-bind="text: folderListError"></span>
</div>
<table class="table table-hover list-table" data-bind="i18nUpdate: folderList">
<colgroup>
<col />
<col style="width: 1%" />
<col style="width: 1%" />
<col style="width: 1%" data-bind="visible: displaySpecSetting" />
</colgroup>
<table class="table table-hover list-table" data-bind="i18nUpdate: folderList, css:{'displaySpecSetting': displaySpecSetting}">
<tbody data-bind="template: { name: 'SettingsFolderItem', foreach: folderList }"></tbody>
</table>
</div>

View file

@ -19,33 +19,29 @@
</div>
<div class="control-group">
<label class="control-label" data-i18n="SETTINGS_GENERAL/LABEL_LAYOUT"></label>
<div class="controls">
<div data-bind="component: {
name: 'Select',
params: {
options: layoutTypes,
value: layout,
trigger: layoutTrigger,
optionsText: 'name',
optionsValue: 'id'
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Select',
params: {
options: layoutTypes,
value: layout,
trigger: layoutTrigger,
optionsText: 'name',
optionsValue: 'id'
}
}"></div>
</div>
<div class="control-group">
<label class="control-label" data-i18n="SETTINGS_GENERAL/LABEL_EDITOR"></label>
<div class="controls">
<div data-bind="component: {
name: 'Select',
params: {
options: editorDefaultTypes,
value: editorDefaultType,
trigger: editorDefaultTypeTrigger,
optionsText: 'name',
optionsValue: 'id'
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Select',
params: {
options: editorDefaultTypes,
value: editorDefaultType,
trigger: editorDefaultTypeTrigger,
optionsText: 'name',
optionsValue: 'id'
}
}"></div>
</div>
<div class="control-group">
<label class="control-label" data-i18n="SETTINGS_GENERAL/LABEL_MESSAGE_PER_PAGE"></label>

View file

@ -14,15 +14,13 @@
<br />
<br />
<div class="control-group">
<div class="controls">
<div data-bind="component: {
name: 'Checkbox',
params: {
label: 'SETTINGS_OPEN_PGP/LABEL_ALLOW_DRAFT_AUTOSAVE',
value: allowDraftAutosave
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Checkbox',
params: {
label: 'SETTINGS_OPEN_PGP/LABEL_ALLOW_DRAFT_AUTOSAVE',
value: allowDraftAutosave
}
}"></div>
</div>
<br />
<table class="table table-hover list-table" data-bind="i18nUpdate: openpgpkeys">

View file

@ -3,19 +3,17 @@
<div class="legend" data-i18n="SETTINGS_SECURITY/LEGEND_SECURITY"></div>
<div class="control-group">
<label class="control-label" data-i18n="SETTINGS_SECURITY/LABEL_AUTOLOGOUT"></label>
<div class="controls">
<div data-bind="component: {
name: 'Select',
params: {
inline: true,
options: autoLogoutOptions,
value: autoLogout,
trigger: autoLogoutTrigger,
optionsText: 'name',
optionsValue: 'id'
}
}"></div>
</div>
<div class="controls" data-bind="component: {
name: 'Select',
params: {
inline: true,
options: autoLogoutOptions,
value: autoLogout,
trigger: autoLogoutTrigger,
optionsText: 'name',
optionsValue: 'id'
}
}"></div>
</div>
</div>
</div>

View file

@ -8,32 +8,27 @@
<i class="icon-user-add"></i>
<span data-i18n="SETTINGS_TEMPLATES/BUTTON_ADD_TEMPLATE"></span>
</a>
<br />
<br />
<br />
<div class="templates-list-top-padding"></div>
<table class="table table-hover list-table templates-list" data-bind="i18nUpdate: templates">
<colgroup>
<col />
<col style="width: 150px" />
<col style="width: 1%" />
</colgroup>
<tbody data-bind="foreach: templates">
<tr class="template-item" draggable="true" data-bind="sortableItem: { list: $root.templates }">
<td class="e-action">
<span class="template-img fontastic">👤</span>
<i class="fontastic drag-handle"></i>
<span class="template-name" data-bind="text: name"></span>
</td>
<td>
<a class="btn btn-small btn-small-small btn-danger pull-right button-confirm-delete button-delete-transitions" data-bind="css: {'delete-access': deleteAccess}, click: function(oTemplate) { $root.deleteTemplate(oTemplate); }"
data-i18n="GLOBAL/ARE_YOU_SURE"></a>
</td>
<td>
<span class="delete-template fontastic" data-bind="visible: !deleteAccess(), click: function (oTemplate) { $root.templateForDeletion(oTemplate); }">🗑</span>
</td>
</tr>
</tbody>
</table>
</div>
<table class="table table-hover list-table templates-list" data-bind="i18nUpdate: templates">
<colgroup>
<col />
<col style="width: 150px" />
<col style="width: 1%" />
</colgroup>
<tbody data-bind="foreach: templates">
<tr class="template-item" draggable="true" data-bind="sortableItem: { list: $root.templates }">
<td class="e-action">
<span class="template-img fontastic">👤</span>
<i class="fontastic drag-handle"></i>
<span class="template-name" data-bind="text: name"></span>
</td>
<td>
<a class="btn btn-small btn-small-small btn-danger pull-right button-confirm-delete button-delete-transitions" data-bind="css: {'delete-access': deleteAccess}, click: function(oTemplate) { $root.deleteTemplate(oTemplate); }"
data-i18n="GLOBAL/ARE_YOU_SURE"></a>
</td>
<td>
<span class="delete-template fontastic" data-bind="visible: !deleteAccess(), click: function (oTemplate) { $root.templateForDeletion(oTemplate); }">🗑</span>
</td>
</tr>
</tbody>
</table>
</div>

View file

@ -3,11 +3,7 @@
<div class="btn-toolbar">
<div class="audioPlace"
data-bind="visible: '' !== currentAudio(), attr: { title: currentAudio }, click: stopPlay">
<div class="playIcon equaliser" data-bind="css: {'animated': '' !== currentAudio()}">
<div class="bar first"></div>
<div class="bar second"></div>
<div class="bar third"></div>
</div>
<div class="playIcon"><div></div></div>
<i class="stopIcon fontastic"></i>
</div>
<div class="accountPlace hide-mobile" data-bind="text: emailTitle()"></div>