diff options
Diffstat (limited to 'core')
-rw-r--r-- | core/Controller/ClientFlowLoginController.php | 3 | ||||
-rw-r--r-- | core/css/header.scss | 23 | ||||
-rw-r--r-- | core/css/styles.scss | 61 | ||||
-rw-r--r-- | core/js/sharedialogshareelistview.js | 19 |
4 files changed, 68 insertions, 38 deletions
diff --git a/core/Controller/ClientFlowLoginController.php b/core/Controller/ClientFlowLoginController.php index 47bbbce640e..7d6e79d39bc 100644 --- a/core/Controller/ClientFlowLoginController.php +++ b/core/Controller/ClientFlowLoginController.php @@ -319,6 +319,9 @@ class ClientFlowLoginController extends Controller { $redirectUri = 'nc://login/server:' . $serverPath . '&user:' . urlencode($loginName) . '&password:' . urlencode($token); } + // Clear the token from the login here + $this->tokenProvider->invalidateToken($sessionId); + return new Http\RedirectResponse($redirectUri); } } diff --git a/core/css/header.scss b/core/css/header.scss index b38c0bcb401..7021762bf7f 100644 --- a/core/css/header.scss +++ b/core/css/header.scss @@ -206,12 +206,15 @@ nav { margin-left: -54px; } -.header-left #navigation, -.ui-datepicker, -.ui-timepicker.ui-widget { +.header-left #navigation { position: relative; left: -100%; width: 160px; +} + +.header-left #navigation, +.ui-datepicker, +.ui-timepicker.ui-widget { background-color: $color-main-background; filter: drop-shadow(0 1px 10px $color-box-shadow); &:after { @@ -440,7 +443,6 @@ nav { display: inline-block; width: auto; clear: both; - height: 44px; li { float: left; @@ -462,7 +464,7 @@ nav { } } .app-loading .icon-loading-small-dark { - top:12px; + top: 12px; width: 20px; height: 20px; } @@ -495,10 +497,11 @@ nav { color: rgba($color-main-text, .7); width: auto; left: 50%; - top: 45px; + top: 100%; transform: translateX(-50%); padding: 4px 10px; filter: drop-shadow(0 1px 10px $color-box-shadow); + z-index: 100; } li:hover span { @@ -519,7 +522,6 @@ nav { transform: translateX(-50%); left: 50%; bottom: 0; - z-index: 100; display: none; } li a.active:before, @@ -527,6 +529,13 @@ nav { li:hover a.active:before { display: block; } + li a.active:before { + z-index: 99; + } + li:hover a:before, + li a.active:hover:before { + z-index: 101; + } &.menu-open li:hover a:before, &.menu-open li a.active:before, &.menu-open li:hover span { diff --git a/core/css/styles.scss b/core/css/styles.scss index c479d6df888..b782c4e558a 100644 --- a/core/css/styles.scss +++ b/core/css/styles.scss @@ -1035,15 +1035,6 @@ code { background-color: inherit; } td { - > * { - border-radius: 50%; - text-align: center; - font-weight: normal; - color: $color-main-text; - padding: 6px; - line-height: 12px; - } - &.ui-datepicker-today a:not(.ui-state-hover) { background-color: nc-lighten($color-main-text, 86%); } @@ -1056,7 +1047,7 @@ code { font-weight: bold; } - &.ui-datepicker-week-end :not(.ui-state-hover), + &.ui-datepicker-week-end:not(.ui-state-disabled) :not(.ui-state-hover), .ui-priority-secondary:not(.ui-state-hover) { color: nc-lighten($color-main-text, 33%); opacity: .8; @@ -1099,26 +1090,25 @@ code { font-weight: 300; } } + /* AM/PM fix */ + table.ui-timepicker tr .ui-timepicker-hour-cell:first-child { + margin-left: 30px; + } .ui-timepicker-table { th { font-weight: normal; color: nc-lighten($color-main-text, 33%); opacity: .8; + &.periods { + padding: 0; + width: 30px; + line-height: 30px; + } } tr:hover { background-color: inherit; } td { - > * { - border-radius: 50%; - text-align: center; - font-weight: normal; - color: $color-main-text; - padding: 8px 7px; - font-size: .9em; - line-height: 12px; - } - &.ui-timepicker-hour-cell a.ui-state-active, &.ui-timepicker-minute-cell a.ui-state-active, .ui-state-hover, @@ -1139,6 +1129,37 @@ code { } } +/* ---- jQuery UI datepicker & timepicker global rules ---- */ +.ui-widget.ui-datepicker .ui-datepicker-calendar, +.ui-widget.ui-timepicker table.ui-timepicker { + tr { + display: flex; + flex-wrap: nowrap; + justify-content: space-between; + td { + display: block; + flex: 1 1; + margin: 0; + padding: 2px; + display: flex; + align-items: center; + justify-content: center; + > * { + border-radius: 50%; + text-align: center; + font-weight: normal; + color: $color-main-text; + display: block; + line-height: 18px; + width: 18px; + height: 18px; + padding: 3px; + font-size: .9em; + } + } + } +} + /* ---- DIALOGS ---- */ #oc-dialog-filepicker-content { diff --git a/core/js/sharedialogshareelistview.js b/core/js/sharedialogshareelistview.js index b4828e3b0dc..30cbeff3c64 100644 --- a/core/js/sharedialogshareelistview.js +++ b/core/js/sharedialogshareelistview.js @@ -116,7 +116,7 @@ '<label for="expireDate-{{cid}}-{{shareId}}">{{expireDateLabel}}</label>' + '<div class="expirationDateContainer-{{cid}}-{{shareId}} {{#unless hasExpireDate}}hidden{{/unless}}">' + ' <label for="expirationDatePicker-{{cid}}-{{shareId}}" class="hidden-visually" value="{{expirationDate}}">{{expirationLabel}}</label>' + - ' <input id="expirationDatePicker-{{cid}}-{{shareId}}" class="datepicker" type="text" placeholder="{{expirationDatePlaceholder}}" value="{{expireDate}}" />' + + ' <input id="expirationDatePicker-{{cid}}-{{shareId}}" class="datepicker" type="text" placeholder="{{expirationDatePlaceholder}}" value="{{#if hasExpireDate}}{{expireDate}}{{else}}{{defaultExpireDate}}{{/if}}" />' + '</div>' + '</span>' + '</li>' + @@ -266,6 +266,8 @@ expireDateLabel: t('core', 'Set expiration date'), passwordLabel: t('core', 'Password protect'), crudsLabel: t('core', 'Access control'), + expirationDatePlaceholder: t('core', 'Expiration date'), + defaultExpireDate: moment().add(1, 'day').format('DD-MM-YYYY'), // Can't expire today triangleSImage: OC.imagePath('core', 'actions/triangle-s'), isResharingAllowed: this.configModel.get('isResharingAllowed'), isPasswordForMailSharesRequired: this.configModel.get('isPasswordForMailSharesRequired'), @@ -513,19 +515,14 @@ var shareId = li.data('share-id'); var expirationDatePicker = '#expirationDatePicker-' + this.cid + '-' + shareId; var view = this; - $(expirationDatePicker).closest('div').datepicker({ + $(expirationDatePicker).datepicker({ dateFormat : 'dd-mm-yy', - onSelect: - function (expireDate) { - view.setExpirationDate(shareId, expireDate); - }, - onClose: - function () { - $(expirationDatePicker).removeClass('hidden-visually'); - } + onSelect: function (expireDate) { + view.setExpirationDate(shareId, expireDate); + } }); + $(expirationDatePicker).focus(); - $(expirationDatePicker).addClass('hidden-visually'); }, setExpirationDate: function(shareId, expireDate) { |