Bugfix boostrap alerts.less was accidentally removed

Bugfix Date.fromNow('past'/'future') reversed
Replace Events[pub/sub]('interval.*') with setInterval()
Events[pub/sub] to native
Cleanup knockout extensions
Replaced momentToNode with proper HTML5 <time>
Cleanup Momentor
This commit is contained in:
djmaze 2020-08-14 20:35:39 +02:00
parent 6541a1de7c
commit 9f1ea1a0fd
44 changed files with 539 additions and 1126 deletions

View file

@ -2844,49 +2844,6 @@ NewThemeLink IncludeCss LoadingDescriptionEsc TemplatesLink LangLink IncludeBack
return $iResult;
}
/**
* @throws \MailSo\Base\Exceptions\Exception
*/
public function DoAccountsCounts() : array
{
$oAccount = $this->getAccountFromToken();
$bComplete = true;
$aCounts = array();
if ($this->GetCapa(false, false, Enumerations\Capa::ADDITIONAL_ACCOUNTS, $oAccount))
{
$iLimit = 7;
$aAccounts = $this->GetAccounts($oAccount);
if ($aAccounts)
{
if ($iLimit > \count($aAccounts))
{
$aAccounts = \array_slice($aAccounts, 0, $iLimit);
}
else
{
$bComplete = false;
}
foreach ($aAccounts as $sEmail => $sHash)
{
$aCounts[] = array(\MailSo\Base\Utils::IdnToUtf8($sEmail),
$oAccount->Email() === $sEmail ? 0 : $this->getAccountUnreadCountFromHash($sHash));
}
}
}
else
{
$aCounts[] = array(\MailSo\Base\Utils::IdnToUtf8($oAccount->Email()), 0);
}
return $this->DefaultResponse(__FUNCTION__, array(
'Complete' => $bComplete,
'Counts' => $aCounts
));
}
public function ClearSignMeData(Model\Account $oAccount) : void
{
if ($oAccount)

View file

@ -235,7 +235,7 @@ nl_NL:
ATTACHMENTS_ERROR_DESC: "Waarschuwing! Nog niet alle bijlagen zijn klaar met uploaden"
ATTACHMENTS_UPLOAD_ERROR_DESC: "Toevoegen van bijlage(n) is nog niet gereed"
BUTTON_REQUEST_READ_RECEIPT: "Leesbevestiging vragen"
BUTTON_MARK_AS_IMPORTANT: "Marker als belangrijk"
BUTTON_MARK_AS_IMPORTANT: "Markeer als belangrijk"
BUTTON_OPEN_PGP: "OpenPGP (allen bij Platte Tekst)"
BUTTON_REQUEST_DSN: "Ontvangstbevestiging vragen"
POPUPS_WELCOME_PAGE:

View file

@ -18,11 +18,11 @@
</div>
</div>
</div>
<div class="b-content" data-bind="nano: true, scrollerShadows: true">
<div class="content g-scrollbox" data-scroller-shadows-content>
<div class="b-content">
<div class="content g-scrollbox">
<div class="content-wrapper">
<div id="rl-settings-subscreen" class="b-settings-content" style="position: relative; z-index: 2"></div>
</div>
</div>
</div>
</div>
</div>

View file

@ -1,10 +0,0 @@
<div class="rl-cmd" data-bind="css: {opened: opened}, click: function() { focused(true) }">
<div class="rl-cmd-wrp">
<div class="rl-cmd-history"><div class="rl-cmd-history-data"></div></div>
<div class="rl-cmd-input-wrp">
<div class="rl-cmd-input-helper" data-bind="text: cmdHelper"></div>
<div class="rl-cmd-input-prefix">#</div>
<input type="text" class="rl-cmd-input" data-bind="textInput: cmd, hasFocus: focused, onEnter: onEnter, onKeyDown: onKeyDown, onEsc: onEsc, onTab: onTab" />
</div>
</div>
</div>

View file

@ -12,7 +12,7 @@
<span class="desc" data-bind="text: loginDescription"></span>
</div>
{{INCLUDE/AfterLogo/PLACE}}
<div class="alert alertError" data-bind="visibleAnimated: '' !== submitError()">
<div class="alert alertError" data-bind="visibleAnimated: '' !== submitError()" hidden="">
<button type="button" class="close" data-bind="click: function () { submitError('') }">&times;</button>
<span data-bind="text: submitError"></span>
<div data-bind="visible: '' !== submitErrorAddidional()">

View file

@ -10,8 +10,8 @@
<i class="icon-address-book"></i>
</a>
</div>
<div class="b-content opacity-on-panel-disabled" data-bind="visible: allowFolders, nano: true, scrollerShadows: true, css: {'inbox-is-starred': isInboxStarred}">
<div class="content g-scrollbox" data-scroller-shadows-content>
<div class="b-content opacity-on-panel-disabled" data-bind="visible: allowFolders, css: {'inbox-is-starred': isInboxStarred}">
<div class="content g-scrollbox">
<div class="content-wrapper">
<div class="b-folders-system" data-bind="template: { name: 'MailFolderListSystemItem', foreach: folderListSystem }"></div>
<hr class="b-list-delimiter" />
@ -36,4 +36,4 @@
</a>
</div>
</div>
</div>
</div>

View file

@ -166,8 +166,8 @@
</div>
<div class="line-loading e-strip-animation" data-bind="visible: messageListCompleteLoadingThrottle"></div>
<div class="mainDelimiter toolbarDelimiter"></div>
<div class="b-content" data-bind="nano: true, scrollerShadows: true, initDom: dragOverBodyArea">
<div class="content g-scrollbox" data-scroller-shadows-content>
<div class="b-content" data-bind="initDom: dragOverBodyArea">
<div class="content g-scrollbox">
<div class="content-wrapper">
<div class="listThreadUidDesc" data-bind="visible: '' !== messageListEndThreadUid(), click: cancelThreadUid">
<i class="icon-left" data-bind="click: cancelThreadUid"></i>
@ -215,4 +215,4 @@
</div>
</div>
</div>
</div>
</div>

View file

@ -16,7 +16,7 @@
</span>
</div>
<div class="dateParent actionHandle dragHandle">
<span class="date" data-moment-format="SHORT" data-moment-format-title="FULL" data-bind="moment: dateTimeStampInUTC"></span>
<time class="date" data-moment-format="SHORT" data-moment-format-title="FULL" data-bind="moment: dateTimeStampInUTC"></time>
</div>
<div class="threadsParent" data-bind="visible: 1 < threadsLen()">
<span class="threads-len">
@ -46,4 +46,4 @@
<span class="subject-prefix" data-bind="text: subjectPrefix"></span><span class="subject-suffix" data-bind="text: subjectSuffix"></span>
</div>
</div>
</div>
</div>

View file

@ -5,7 +5,7 @@
<div class="delimiter"></div>
<div class="wrapper">
<div class="dateParent actionHandle dragHandle">
<span class="date" data-moment-format="SHORT" data-moment-format-title="FULL" data-bind="moment: dateTimeStampInUTC"></span>
<time class="date" data-moment-format="SHORT" data-moment-format-title="FULL" data-bind="moment: dateTimeStampInUTC"></time>
</div>
<div class="threadsParent" data-bind="visible: 1 < threadsLen()">
<span class="threads-len">
@ -47,4 +47,4 @@
</div>
<div class="clearfix"></div>
</div>
</div>
</div>

View file

@ -247,7 +247,7 @@
</span>
</span>
<span data-bind="visible: 0 < viewTimeStamp()">
(<span class="date" data-moment-format="FULL" data-bind="moment: viewTimeStamp"></span>)
(<time class="date" data-moment-format="FULL" data-bind="moment: viewTimeStamp"></time>)
</span>
</div>
<div class="informationShortWrp">
@ -296,17 +296,17 @@
<tr data-bind="visible: 0 < viewTimeStamp()">
<td><span class="i18n uiLabel" data-i18n="MESSAGE/LABEL_DATE"></span></td>
<td>
<span class="date uiLabelValue" data-moment-format="FULL" data-bind="moment: viewTimeStamp"></span>
<time class="date uiLabelValue" data-moment-format="FULL" data-bind="moment: viewTimeStamp"></time>
&nbsp;
(<span class="date uiLabelValue" data-moment-format="FROMNOW" data-bind="moment: viewTimeStamp"></span>)
(<time class="date uiLabelValue" data-moment-format="FROMNOW" data-bind="moment: viewTimeStamp"></time>)
</td>
</tr>
</table>
</div>
</div>
</div>
<div class="messageItem fixIndex" data-bind="css: viewLineAsCss(), nano: true, scrollerShadows: true, attr: {'style': 'top:' + viewBodyTopValue() + 'px' }">
<div class="content g-scrollbox" tabindex="0" data-scroller-shadows-content data-bind="hasfocus: messageDomFocused, css: { 'focused': messageDomFocused },
<div class="messageItem fixIndex" data-bind="css: viewLineAsCss(), attr: {'style': 'top:' + viewBodyTopValue() + 'px' }">
<div class="content g-scrollbox" tabindex="0" data-bind="hasfocus: messageDomFocused, css: { 'focused': messageDomFocused },
style: {'background-color': messageLoadingThrottle() ? '' : bodyBackgroundColor()}">
<div class="content-wrapper">

View file

@ -185,8 +185,8 @@
</div>
</div>
<div class="attachmentAreaParent b-content" style="height: 200px; min-height: 200px" data-bind="nano: true, scrollerShadows: true, visible: attachmentsPlace, initResizeTrigger: [resizer(), 200, 57]">
<div class="content g-scrollbox" data-scroller-shadows-content>
<div class="attachmentAreaParent b-content" style="height: 200px; min-height: 200px" data-bind="visible: attachmentsPlace, initResizeTrigger: [resizer(), 200, 57]">
<div class="content g-scrollbox">
<div class="content-wrapper">
<div class="b-attachment-place" data-bind="visible: addAttachmentEnabled() && dragAndDropEnabled() && dragAndDropVisible(), initDom: composeUploaderDropPlace, css: {'dragAndDropOver': dragAndDropOver}">
<span class="i18n" data-i18n="COMPOSE/ATTACH_DROP_FILES_DESC"></span>

View file

@ -71,8 +71,8 @@
<div class="b-list-toolbar">
<input type="text" class="i18n span3 e-search" placeholder="Search" autocorrect="off" autocapitalize="off" data-i18n="[placeholder]CONTACTS/SEARCH_INPUT_PLACEHOLDER" data-bind="value: search" />
</div>
<div class="b-list-content g-ui-user-select-none" data-bind="nano: true, scrollerShadows: true, css: {'hideContactListCheckbox': !useCheckboxesInList()}">
<div class="content g-scrollbox" data-scroller-shadows-content>
<div class="b-list-content g-ui-user-select-none" data-bind="css: {'hideContactListCheckbox': !useCheckboxesInList()}">
<div class="content g-scrollbox">
<div class="content-wrapper">
<div class="listClear" data-bind="visible: viewClearSearch() && '' !== search()">
<span class="g-ui-link i18n" data-i18n="CONTACTS/CLEAR_SEARCH" data-bind="command: clearCommand"></span>
@ -167,8 +167,8 @@
</button>
</div>
</div>
<div class="b-view-content" data-bind="nano: true, scrollerShadows: true, css: {'read-only': viewReadOnly}">
<div class="content g-scrollbox" data-scroller-shadows-content>
<div class="b-view-content" data-bind="css: {'read-only': viewReadOnly}">
<div class="content g-scrollbox">
<div class="content-wrapper">
<div class="b-contact-view-desc" data-bind="visible: emptySelection">
<span class="i18n" data-i18n="CONTACTS/CONTACT_VIEW_DESC"></span>

View file

@ -30,7 +30,6 @@
</span>
</div>
</div>
<!--<div data-bind="json: $data"></div>-->
</div>
</div>
<div class="control-group">

View file

@ -18,11 +18,11 @@
</a>
</div>
</div>
<div class="b-content" data-bind="nano: true, scrollerShadows: true">
<div class="content g-scrollbox" data-scroller-shadows-content>
<div class="b-content">
<div class="content g-scrollbox">
<div class="content-wrapper">
<div id="rl-settings-subscreen" class="b-settings-content" style="position: relative; z-index: 2"></div>
</div>
</div>
</div>
</div>
</div>