diff --git a/settings/css/settings.css b/settings/css/settings.css index a190cd91b0..4cd8559844 100644 --- a/settings/css/settings.css +++ b/settings/css/settings.css @@ -102,7 +102,7 @@ table.nostyle td { padding: 0.2em 0; } #sessions table, #apppasswords table { width: 100%; - min-height: 150px; + min-height: 50px; padding-top: 5px; max-width: 580px; } @@ -125,6 +125,11 @@ table.nostyle td { padding: 0.2em 0; } white-space: nowrap; overflow: hidden; } + +#sessions tr *:nth-child(2), +#apppasswords tr *:nth-child(2) { + text-align: right; +} #sessions .token-list td a.icon-delete, #apppasswords .token-list td a.icon-delete { display: block; diff --git a/settings/js/authtoken_collection.js b/settings/js/authtoken_collection.js index ab7f7d5804..d1ffc25a59 100644 --- a/settings/js/authtoken_collection.js +++ b/settings/js/authtoken_collection.js @@ -39,7 +39,7 @@ comparator: function (t1, t2) { var ts1 = parseInt(t1.get('lastActivity'), 10); var ts2 = parseInt(t2.get('lastActivity'), 10); - return ts1 < ts2; + return ts2 - ts1; }, tokenType: null, diff --git a/settings/js/authtoken_view.js b/settings/js/authtoken_view.js index 2ebedb4131..354173341b 100644 --- a/settings/js/authtoken_view.js +++ b/settings/js/authtoken_view.js @@ -114,14 +114,18 @@ // Chrome User Agent from https://developer.chrome.com/multidevice/user-agent chrome: /^Mozilla\/5\.0 \([^)]*(Windows|OS X|Linux)[^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\) Chrome\/(\d+)[0-9.]+ (?:Mobile Safari|Safari)\/[0-9.]+$/, // Safari User Agent from http://www.useragentstring.com/pages/Safari/ - safari: /^Mozilla\/5\.0 \([^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\) Version\/([0-9]+)[0-9.]+ Safari\/[0-9.A-Z]+$/, + safari: /^Mozilla\/5\.0 \([^)]*(Windows|OS X)[^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\)(?: Version\/([0-9]+)[0-9.]+)? Safari\/[0-9.A-Z]+$/, // Android Chrome user agent: https://developers.google.com/chrome/mobile/docs/user-agent androidChrome: /Android.*(?:; (.*) Build\/).*Chrome\/(\d+)[0-9.]+/, iphone: / *CPU +iPhone +OS +(\d+)_\d+ +like +Mac +OS +X */, iosClient: /^Mozilla\/5\.0 \(iOS\) ownCloud\-iOS.*$/, androidClient:/^Mozilla\/5\.0 \(Android\) ownCloud\-android.*$/, // DAVdroid/1.2 (2016/07/03; dav4android; okhttp3) Android/6.0.1 - davDroid: /DAVdroid\/([0-9.]+)/ + davDroid: /DAVdroid\/([0-9.]+)/, + // Mozilla/5.0 (U; Linux; Maemo; Jolla; Sailfish; like Android 4.3) AppleWebKit/538.1 (KHTML, like Gecko) WebPirate/2.0 like Mobile Safari/538.1 (compatible) + webPirate: /(Sailfish).*WebPirate\/(\d+)/, + // Mozilla/5.0 (Maemo; Linux; U; Jolla; Sailfish; Mobile; rv:31.0) Gecko/31.0 Firefox/31.0 SailfishBrowser/1.0 + sailfishBrowser: /(Sailfish).*SailfishBrowser\/(\d+)/ }; var nameMap = { ie: t('setting', 'Internet Explorer'), @@ -133,7 +137,9 @@ iphone: t('setting', 'iPhone'), iosClient: t('setting', 'iOS Client'), androidClient: t('setting', 'Android Client'), - davDroid: 'DAVdroid' + davDroid: 'DAVdroid', + webPirate: 'WebPirate', + sailfishBrowser: 'SailfishBrowser' }; if (matches) { diff --git a/settings/templates/personal.php b/settings/templates/personal.php index e3164eb5b9..4f580e4128 100644 --- a/settings/templates/personal.php +++ b/settings/templates/personal.php @@ -172,7 +172,7 @@ if($_['passwordChangeSupported']) { t('Device'));?> - t('Recent activity'));?> + t('Last activity'));?> @@ -188,7 +188,7 @@ if($_['passwordChangeSupported']) { t('Name'));?> - t('Recent activity'));?> + t('Last activity'));?>