Frontend: More specific "not found" message when searching for edited content

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
This commit is contained in:
Michael Mayer 2020-07-15 09:20:27 +02:00
parent f484dd004c
commit 0aaf0d6c24
10 changed files with 482 additions and 403 deletions

View file

@ -3,7 +3,10 @@
<v-card v-if="photos.length === 0" class="p-photos-empty secondary-light lighten-1 ma-1" flat>
<v-card-title primary-title>
<div>
<h3 class="title ma-0 pa-0">
<h3 class="title ma-0 pa-0" v-if="filter.order === 'edited'">
<translate>Couldn't find recently edited</translate>
</h3>
<h3 class="title ma-0 pa-0" v-else>
<translate>Couldn't find anything</translate>
</h3>
<p class="mt-4 mb-0 pa-0">

View file

@ -1,86 +1,109 @@
<template>
<v-data-table
:headers="listColumns"
:items="photos"
hide-actions
class="elevation-0 p-photos p-photo-list p-results"
disable-initial-sort
item-key="ID"
v-model="selected"
:no-data-text="notFoundMessage"
>
<template slot="items" slot-scope="props">
<td style="user-select: none;" :data-uid="props.item.UID">
<v-img class="accent lighten-2 clickable" aspect-ratio="1"
:src="props.item.thumbnailUrl('tile_50')"
@mousedown="onMouseDown($event, props.index)"
@contextmenu="onContextMenu($event, props.index)"
@click.stop.prevent="onClick($event, props.index)"
>
<v-layout
slot="placeholder"
fill-height
align-center
justify-center
ma-0
<div>
<v-card v-if="photos.length === 0" class="p-photos-empty secondary-light lighten-1 ma-1" flat>
<v-card-title primary-title>
<div>
<h3 class="title ma-0 pa-0" v-if="filter.order === 'edited'">
<translate>Couldn't find recently edited</translate>
</h3>
<h3 class="title ma-0 pa-0" v-else>
<translate>Couldn't find anything</translate>
</h3>
<p class="mt-4 mb-0 pa-0">
<translate>Try again using other filters or keywords.</translate>
<translate>If a file you expect is missing, please re-index your library and wait until indexing has been completed.</translate>
<template v-if="$config.feature('review')" class="mt-2 mb-0 pa-0">
<translate>Non-photographic and low-quality images require a review before they appear in search results.</translate>
</template>
</p>
</div>
</v-card-title>
</v-card>
<v-data-table v-else
:headers="listColumns"
:items="photos"
hide-actions
class="elevation-0 p-photos p-photo-list p-results"
disable-initial-sort
item-key="ID"
v-model="selected"
:no-data-text="notFoundMessage"
>
<template slot="items" slot-scope="props">
<td style="user-select: none;" :data-uid="props.item.UID">
<v-img class="accent lighten-2 clickable" aspect-ratio="1"
:src="props.item.thumbnailUrl('tile_50')"
@mousedown="onMouseDown($event, props.index)"
@contextmenu="onContextMenu($event, props.index)"
@click.stop.prevent="onClick($event, props.index)"
>
<v-progress-circular indeterminate
color="accent lighten-5"></v-progress-circular>
</v-layout>
<v-layout
slot="placeholder"
fill-height
align-center
justify-center
ma-0
>
<v-progress-circular indeterminate
color="accent lighten-5"></v-progress-circular>
</v-layout>
<v-btn v-if="selection.length && $clipboard.has(props.item)" :ripple="false"
flat icon large absolute class="p-photo-select">
<v-icon color="white" class="t-select t-on">check_circle</v-icon>
</v-btn>
<v-btn v-else-if="!selection.length && props.item.Type === 'video' && props.item.isPlayable()" :ripple="false"
flat icon large absolute class="p-photo-play opacity-75"
@click.stop.prevent="openPhoto(props.index, true)">
<v-icon color="white" class="action-play">play_arrow</v-icon>
</v-btn>
</v-img>
</td>
<v-btn v-if="selection.length && $clipboard.has(props.item)" :ripple="false"
flat icon large absolute class="p-photo-select">
<v-icon color="white" class="t-select t-on">check_circle</v-icon>
</v-btn>
<v-btn v-else-if="!selection.length && props.item.Type === 'video' && props.item.isPlayable()"
:ripple="false"
flat icon large absolute class="p-photo-play opacity-75"
@click.stop.prevent="openPhoto(props.index, true)">
<v-icon color="white" class="action-play">play_arrow</v-icon>
</v-btn>
</v-img>
</td>
<td class="p-photo-desc clickable" :data-uid="props.item.UID" @click.exact="editPhoto(props.index)"
style="user-select: none;">
{{ props.item.Title }}
</td>
<td class="p-photo-desc hidden-xs-only" :title="props.item.getDateString()">
<button @click.stop.prevent="editPhoto(props.index)" style="user-select: none;">
{{ props.item.shortDateString() }}
</button>
</td>
<td class="p-photo-desc hidden-sm-and-down" style="user-select: none;">
<button @click.stop.prevent="editPhoto(props.index)">
{{ props.item.CameraMake }} {{ props.item.CameraModel }}
</button>
</td>
<td class="p-photo-desc hidden-xs-only">
<button @click.exact="downloadFile(props.index)"
title="Name" v-if="filter.order === 'name'">
{{ props.item.FileName }}
</button>
<button v-else-if="props.item.Country !== 'zz' && showLocation" @click.stop.prevent="openLocation(props.index)"
style="user-select: none;">
{{ props.item.locationInfo() }}
</button>
<span v-else>
<td class="p-photo-desc clickable" :data-uid="props.item.UID" @click.exact="editPhoto(props.index)"
style="user-select: none;">
{{ props.item.Title }}
</td>
<td class="p-photo-desc hidden-xs-only" :title="props.item.getDateString()">
<button @click.stop.prevent="editPhoto(props.index)" style="user-select: none;">
{{ props.item.shortDateString() }}
</button>
</td>
<td class="p-photo-desc hidden-sm-and-down" style="user-select: none;">
<button @click.stop.prevent="editPhoto(props.index)">
{{ props.item.CameraMake }} {{ props.item.CameraModel }}
</button>
</td>
<td class="p-photo-desc hidden-xs-only">
<button @click.exact="downloadFile(props.index)"
title="Name" v-if="filter.order === 'name'">
{{ props.item.FileName }}
</button>
<button v-else-if="props.item.Country !== 'zz' && showLocation"
@click.stop.prevent="openLocation(props.index)"
style="user-select: none;">
{{ props.item.locationInfo() }}
</button>
<span v-else>
{{ props.item.locationInfo() }}
</span>
</td>
<td class="text-xs-center">
<v-btn v-if="hidePrivate" class="p-photo-private" icon small flat :ripple="false"
@click.stop.prevent="props.item.togglePrivate()" :data-uid="props.item.UID">
<v-icon v-if="props.item.Private" color="secondary-dark">lock</v-icon>
<v-icon v-else color="accent lighten-3">lock_open</v-icon>
</v-btn>
<v-btn class="p-photo-like" icon small flat :ripple="false"
@click.stop.prevent="props.item.toggleLike()" :data-uid="props.item.UID">
<v-icon v-if="props.item.Favorite" color="pink lighten-3" :data-uid="props.item.UID">favorite</v-icon>
<v-icon v-else color="accent lighten-3" :data-uid="props.item.UID">favorite_border</v-icon>
</v-btn>
</td>
</template>
</v-data-table>
</td>
<td class="text-xs-center">
<v-btn v-if="hidePrivate" class="p-photo-private" icon small flat :ripple="false"
@click.stop.prevent="props.item.togglePrivate()" :data-uid="props.item.UID">
<v-icon v-if="props.item.Private" color="secondary-dark">lock</v-icon>
<v-icon v-else color="accent lighten-3">lock_open</v-icon>
</v-btn>
<v-btn class="p-photo-like" icon small flat :ripple="false"
@click.stop.prevent="props.item.toggleLike()" :data-uid="props.item.UID">
<v-icon v-if="props.item.Favorite" color="pink lighten-3" :data-uid="props.item.UID">favorite</v-icon>
<v-icon v-else color="accent lighten-3" :data-uid="props.item.UID">favorite_border</v-icon>
</v-btn>
</td>
</template>
</v-data-table>
</div>
</template>
<script>
export default {

View file

@ -3,7 +3,10 @@
<v-card v-if="photos.length === 0" class="p-photos-empty secondary-light lighten-1 ma-1" flat>
<v-card-title primary-title>
<div>
<h3 class="title ma-0 pa-0">
<h3 class="title ma-0 pa-0" v-if="filter.order === 'edited'">
<translate>Couldn't find recently edited</translate>
</h3>
<h3 class="title ma-0 pa-0" v-else>
<translate>Couldn't find anything</translate>
</h3>
<p class="mt-4 mb-0 pa-0">

Binary file not shown.

View file

@ -37,15 +37,15 @@ msgstr "%{n} Kategorien gefunden"
msgid "%{n} results"
msgstr "%{n} Ergebnisse"
#: src/resources/options.js:198
#: src/options/options.js:198
msgid "1 hour"
msgstr "1 Stunde"
#: src/resources/options.js:200
#: src/options/options.js:200
msgid "12 hours"
msgstr "12 Stunden"
#: src/resources/options.js:199
#: src/options/options.js:199
msgid "4 hours"
msgstr "4 Stunden"
@ -97,23 +97,23 @@ msgstr "Hinzufügen"
msgid "Added"
msgstr "Hinzugefügt"
#: src/resources/options.js:208
#: src/options/options.js:208
msgid "After 1 day"
msgstr "Nach einem Tag"
#: src/resources/options.js:209
#: src/options/options.js:209
msgid "After 3 days"
msgstr "Nach 3 Tagen"
#: src/resources/options.js:210
#: src/options/options.js:210
msgid "After 7 days"
msgstr "Nach 7 Tagen"
#: src/resources/options.js:212
#: src/options/options.js:212
msgid "After one month"
msgstr "Nach einem Monat"
#: src/resources/options.js:214
#: src/options/options.js:214
msgid "After one year"
msgstr "Nach einem Jahr"
@ -125,11 +125,11 @@ msgstr ""
"Fotos und Videos können über das Kontextmenü zu bestehenden oder neuen Alben "
"hinzugefügt werden."
#: src/resources/options.js:213
#: src/options/options.js:213
msgid "After two months"
msgstr "Nach zwei Monaten"
#: src/resources/options.js:211
#: src/options/options.js:211
msgid "After two weeks"
msgstr "Nach zwei Wochen"
@ -212,7 +212,7 @@ msgstr ""
msgid "Altitude"
msgstr "Höhe"
#: src/dialog/photo/details.vue:443
#: src/dialog/photo/details.vue:453
msgid "Altitude (m)"
msgstr "Höhe (m)"
@ -238,11 +238,11 @@ msgstr "API Key"
msgid "Apply"
msgstr "Speichern"
#: src/component/photo/cards.vue:124 src/dialog/photo/details.vue:123
#: src/component/photo/cards.vue:127 src/dialog/photo/details.vue:123
msgid "Approve"
msgstr "Übernehmen"
#: src/component/navigation.vue:103 src/component/photo/cards.vue:121
#: src/component/navigation.vue:103 src/component/photo/cards.vue:124
#: src/component/photo/clipboard.vue:155 src/pages/settings/general.vue:415
#: src/routes.js:178 src/share/photo/clipboard.vue:74
msgid "Archive"
@ -268,7 +268,7 @@ msgstr "Diese Kategorie wirklich löschen?"
msgid "Are you sure you want to delete this account?"
msgstr "Diesen Account wirklich löschen?"
#: src/dialog/photo/details.vue:448
#: src/dialog/photo/details.vue:458
msgid "Artist"
msgstr "Ersteller"
@ -284,15 +284,15 @@ msgstr "Mindestens 6 Zeichen."
msgid "Backup"
msgstr "Backup"
#: src/resources/options.js:233
#: src/options/options.js:233
msgid "Black"
msgstr "Schwarz"
#: src/resources/options.js:229
#: src/options/options.js:229
msgid "Blue"
msgstr "Blau"
#: src/resources/options.js:230
#: src/options/options.js:230
msgid "Brown"
msgstr "Braun"
@ -312,9 +312,9 @@ msgstr "Bitte warten…"
msgid "Calendar"
msgstr "Kalender"
#: src/component/album/toolbar.vue:120 src/component/photo/list.vue:115
#: src/component/album/toolbar.vue:120 src/component/photo/list.vue:138
#: src/component/photo/toolbar.vue:201 src/dialog/album/edit.vue:126
#: src/dialog/photo/details.vue:430 src/share/photo/list.vue:94
#: src/dialog/photo/details.vue:440 src/share/photo/list.vue:115
msgid "Camera"
msgstr "Kamera"
@ -341,7 +341,7 @@ msgid "Cards"
msgstr "Karteikarten"
#: src/component/album/toolbar.vue:122 src/component/photo/toolbar.vue:206
#: src/dialog/album/edit.vue:128 src/dialog/photo/details.vue:434
#: src/dialog/album/edit.vue:128 src/dialog/photo/details.vue:444
#: src/pages/albums.vue:257 src/share/albums.vue:155
msgid "Category"
msgstr "Kategorie"
@ -375,7 +375,7 @@ msgstr "Schließen"
msgid "Codec"
msgstr "Codec"
#: src/component/photo/toolbar.vue:205 src/dialog/photo/details.vue:433
#: src/component/photo/toolbar.vue:205 src/dialog/photo/details.vue:443
msgid "Color"
msgstr "Farbe"
@ -423,23 +423,31 @@ msgstr "In Zwischenablage kopiert"
msgid "Copy"
msgstr "Kopieren"
#: src/dialog/photo/details.vue:449
#: src/dialog/photo/details.vue:459
msgid "Copyright"
msgstr "Copyright"
#: src/component/photo/cards.vue:6 src/component/photo/mosaic.vue:6
#: src/pages/albums.vue:39 src/pages/albums.vue:48 src/pages/labels.vue:35
#: src/component/photo/cards.vue:9 src/component/photo/list.vue:9
#: src/component/photo/mosaic.vue:9 src/pages/albums.vue:39
#: src/pages/albums.vue:48 src/pages/labels.vue:35
#: src/pages/library/files.vue:36 src/share/albums.vue:16
#: src/share/photo/cards.vue:6 src/share/photo/mosaic.vue:6
#: src/share/photo/cards.vue:9 src/share/photo/list.vue:9
#: src/share/photo/mosaic.vue:9
msgid "Couldn't find anything"
msgstr "Leider nichts gefunden"
#: src/component/photo/list.vue:98 src/share/photo/list.vue:81
#: src/component/photo/list.vue:121 src/share/photo/list.vue:102
msgid "Couldn't find anything."
msgstr "Leider nichts gefunden."
#: src/component/photo/cards.vue:6 src/component/photo/list.vue:6
#: src/component/photo/mosaic.vue:6 src/share/photo/cards.vue:6
#: src/share/photo/list.vue:6 src/share/photo/mosaic.vue:6
msgid "Couldn't find recently edited"
msgstr "Bisher nichts bearbeitet"
#: src/component/album/toolbar.vue:119 src/component/photo/toolbar.vue:200
#: src/dialog/album/edit.vue:125 src/dialog/photo/details.vue:429
#: src/dialog/album/edit.vue:125 src/dialog/photo/details.vue:439
msgid "Country"
msgstr "Land"
@ -459,23 +467,23 @@ msgstr "Erstelle Thumbnails für"
msgid "Current Password"
msgstr "Aktuelles Passwort"
#: src/resources/options.js:228
#: src/options/options.js:228
msgid "Cyan"
msgstr "Cyan"
#: src/resources/options.js:111
#: src/options/options.js:111
msgid "Cyano"
msgstr "Cyano"
#: src/resources/options.js:201
#: src/options/options.js:201
msgid "Daily"
msgstr "Täglich"
#: src/dialog/photo/details.vue:166
#: src/dialog/photo/details.vue:174
msgid "Day"
msgstr "Tag"
#: src/resources/options.js:107
#: src/options/options.js:107
msgid "Default"
msgstr "Standard"
@ -491,7 +499,7 @@ msgid "Delete"
msgstr "Löschen"
#: src/component/album/toolbar.vue:116 src/dialog/album/edit.vue:122
#: src/dialog/photo/details.vue:451
#: src/dialog/photo/details.vue:461
msgid "Description"
msgstr "Beschreibung"
@ -515,7 +523,7 @@ msgstr "Deaktiviert"
msgid "Discover"
msgstr "Entdecken"
#: src/dialog/share.vue:156
#: src/dialog/photo/details.vue:127 src/dialog/share.vue:156
msgid "Done"
msgstr "Fertig"
@ -555,7 +563,7 @@ msgstr "Duplikat"
msgid "Duplicates will be skipped and only appear once."
msgstr "Duplikate werden übersprungen und erscheinen nur einmal."
#: src/resources/options.js:92
#: src/options/options.js:92
msgid "Dutch"
msgstr "Niederländisch"
@ -584,7 +592,7 @@ msgstr "Bearbeitet"
msgid "Enabled"
msgstr "Aktiv"
#: src/resources/options.js:76
#: src/options/options.js:76
msgid "English"
msgstr "Englisch"
@ -596,7 +604,7 @@ msgstr "Fehler"
msgid "Errors"
msgstr "Fehler"
#: src/resources/options.js:202
#: src/options/options.js:202
msgid "Every two days"
msgstr "Jeden zweiten Tag"
@ -612,11 +620,11 @@ msgstr ""
msgid "Expires"
msgstr "Ablaufdatum"
#: src/dialog/photo/details.vue:444
#: src/dialog/photo/details.vue:454
msgid "Exposure"
msgstr "Belichtungszeit"
#: src/dialog/photo/details.vue:445
#: src/dialog/photo/details.vue:455
msgid "F Number"
msgstr "F Nummer"
@ -636,7 +644,7 @@ msgstr "Der Link konnte nicht gespeichert werden"
msgid "Failure while importing uploaded files"
msgstr "Fehler beim Importieren der hochgeladenen Dateien"
#: src/resources/options.js:141
#: src/options/options.js:141
msgid "Fast"
msgstr "Schnell"
@ -677,7 +685,7 @@ msgstr ""
"Dateien mit Namen wie IMG_1234 (2) oder IMG_1234 copy 2 werden als "
"Stapel zusammengefasst."
#: src/dialog/photo/details.vue:446
#: src/dialog/photo/details.vue:456
msgid "Focal Length"
msgstr "Brennweite"
@ -705,7 +713,7 @@ msgstr "Ordnername"
msgid "Folders"
msgstr "Ordner"
#: src/resources/options.js:84
#: src/options/options.js:84
msgid "French"
msgstr "Französisch"
@ -713,19 +721,19 @@ msgstr "Französisch"
msgid "General"
msgstr "Allgemein"
#: src/resources/options.js:80
#: src/options/options.js:80
msgid "German"
msgstr "Deutsch"
#: src/resources/options.js:223
#: src/options/options.js:223
msgid "Gold"
msgstr "Gold"
#: src/resources/options.js:226
#: src/options/options.js:226
msgid "Green"
msgstr "Grün"
#: src/resources/options.js:232
#: src/options/options.js:232
msgid "Grey"
msgstr "Grau"
@ -763,12 +771,12 @@ msgstr "Archivierte Inhalte werden nicht in den Suchergebnissen angezeigt."
msgid "Hide Private"
msgstr "Privates ausblenden"
#: src/resources/options.js:164
#: src/options/options.js:164
msgid "Hybrid"
msgstr "Hybrid"
#: src/component/photo/cards.vue:10 src/component/photo/mosaic.vue:10
#: src/pages/library/files.vue:40
#: src/component/photo/cards.vue:13 src/component/photo/list.vue:13
#: src/component/photo/mosaic.vue:13 src/pages/library/files.vue:40
msgid ""
"If a file you expect is missing, please re-index your library and wait until "
"indexing has been completed."
@ -781,7 +789,7 @@ msgstr ""
msgid "image"
msgstr "Bild"
#: src/resources/options.js:179
#: src/options/options.js:179
msgid "Image"
msgstr "Bild"
@ -839,7 +847,7 @@ msgstr "Indiziere Fotos, Videos und Sidecar-Dateien…"
msgid "Interval"
msgstr "Intervall"
#: src/dialog/photo/details.vue:534
#: src/dialog/photo/details.vue:544
msgid "Invalid date"
msgstr "Ungültiges Datum"
@ -851,7 +859,7 @@ msgstr "Eintrag"
msgid "JPEGs and thumbnails are automatically rendered as needed."
msgstr "JPEGs und Thumbnails werden bei Bedarf automatisch erstellt."
#: src/dialog/photo/details.vue:452
#: src/dialog/photo/details.vue:462
msgid "Keywords"
msgstr "Suchbegriffe"
@ -872,7 +880,7 @@ msgstr "Kategorien"
msgid "Labels deleted"
msgstr "Kategorien gelöscht"
#: src/dialog/photo/details.vue:438 src/pages/settings/general.vue:265
#: src/dialog/photo/details.vue:448 src/pages/settings/general.vue:265
msgid "Language"
msgstr "Sprache"
@ -880,15 +888,15 @@ msgstr "Sprache"
msgid "Last Backup"
msgstr "Letztes Backup"
#: src/dialog/photo/details.vue:441 src/dialog/photo/info.vue:109
#: src/dialog/photo/details.vue:451 src/dialog/photo/info.vue:109
msgid "Latitude"
msgstr "Breitengrad"
#: src/resources/options.js:115
#: src/options/options.js:115
msgid "Lavender"
msgstr "Lavendel"
#: src/component/photo/toolbar.vue:202 src/dialog/photo/details.vue:431
#: src/component/photo/toolbar.vue:202 src/dialog/photo/details.vue:441
msgid "Lens"
msgstr "Objektiv"
@ -905,11 +913,11 @@ msgid "Library"
msgstr "Dateien"
#: src/component/navigation.vue:339 src/component/navigation.vue:33
#: src/dialog/photo/details.vue:450 src/pages/about/license.vue:4
#: src/dialog/photo/details.vue:460 src/pages/about/license.vue:4
msgid "License"
msgstr "Lizenz"
#: src/resources/options.js:225
#: src/options/options.js:225
msgid "Lime"
msgstr "Hellgrün"
@ -925,11 +933,11 @@ msgstr "Link"
msgid "List"
msgstr "Liste"
#: src/resources/options.js:187
#: src/options/options.js:187
msgid "Live"
msgstr "Live"
#: src/dialog/photo/details.vue:255
#: src/dialog/photo/details.vue:275
msgid "Local Time"
msgstr "Ortszeit"
@ -937,8 +945,8 @@ msgstr "Ortszeit"
msgid "location"
msgstr "Ort"
#: src/component/photo/list.vue:117 src/dialog/album/edit.vue:137
#: src/share/photo/list.vue:95
#: src/component/photo/list.vue:140 src/dialog/album/edit.vue:137
#: src/share/photo/list.vue:117
msgid "Location"
msgstr "Ort"
@ -962,11 +970,11 @@ msgstr "Abmelden"
msgid "Logs"
msgstr "Logs"
#: src/dialog/photo/details.vue:442 src/dialog/photo/info.vue:117
#: src/dialog/photo/details.vue:452 src/dialog/photo/info.vue:117
msgid "Longitude"
msgstr "Längengrad"
#: src/resources/options.js:219
#: src/options/options.js:219
msgid "Magenta"
msgstr "Magenta"
@ -982,7 +990,7 @@ msgstr "Manuell"
msgid "Manual Upload"
msgstr "Manueller Upload"
#: src/resources/options.js:145
#: src/options/options.js:145
msgid "Medium"
msgstr "Mittel"
@ -999,11 +1007,11 @@ msgstr "Erlebnisse"
msgid "Monochrome"
msgstr "Monochrom"
#: src/component/photo/toolbar.vue:204 src/dialog/photo/details.vue:195
#: src/component/photo/toolbar.vue:204 src/dialog/photo/details.vue:207
msgid "Month"
msgstr "Monat"
#: src/resources/options.js:119 src/resources/options.js:172
#: src/options/options.js:119 src/options/options.js:172
msgid "Moonlight"
msgstr "Moonlight"
@ -1047,10 +1055,10 @@ msgid_plural "plural"
msgstr[0] ""
msgstr[1] ""
#: src/component/photo/list.vue:117 src/dialog/account/edit.vue:488
#: src/component/photo/list.vue:140 src/dialog/account/edit.vue:488
#: src/dialog/album/edit.vue:121 src/dialog/photo/files.vue:60
#: src/dialog/photo/files.vue:204 src/dialog/photo/info.vue:30
#: src/pages/login.vue:72 src/share/photo/list.vue:95
#: src/pages/login.vue:72 src/share/photo/list.vue:117
msgid "Name"
msgstr "Name"
@ -1060,8 +1068,8 @@ msgstr "Name"
msgid "Name too long"
msgstr "Name zu lang"
#: src/pages/settings/sync.vue:129 src/resources/options.js:197
#: src/resources/options.js:207
#: src/options/options.js:197 src/options/options.js:207
#: src/pages/settings/sync.vue:129
msgid "Never"
msgstr "Nie"
@ -1111,8 +1119,9 @@ msgstr ""
"Keine Warnungen oder Fehler mit diesem Suchbegriff. Bei der Suche wird "
"zwischen Groß- und Kleinschreibung unterschieden."
#: src/component/photo/cards.vue:12 src/component/photo/cards.vue:1
#: src/component/photo/list.vue:103 src/component/photo/mosaic.vue:12
#: src/component/photo/cards.vue:15 src/component/photo/cards.vue:1
#: src/component/photo/list.vue:15 src/component/photo/list.vue:1
#: src/component/photo/list.vue:126 src/component/photo/mosaic.vue:15
#: src/component/photo/mosaic.vue:1 src/dialog/upload.vue:50
#: src/pages/settings/general.vue:99
msgid ""
@ -1122,7 +1131,7 @@ msgstr ""
"Nicht-fotografische Inhalte oder Fotos mit geringer Qualität werden erst "
"nach einer Bestätigung in der Suche angezeigt."
#: src/resources/options.js:137
#: src/options/options.js:137
msgid "None"
msgstr "Keine"
@ -1161,7 +1170,7 @@ msgstr ""
"Note: Bereits angemeldete Benutzer werden nach ändern des Passworts nicht "
"automatisch abgemeldet."
#: src/dialog/photo/details.vue:453
#: src/dialog/photo/details.vue:463
msgid "Notes"
msgstr "Notizen"
@ -1169,20 +1178,16 @@ msgstr "Notizen"
msgid "Nothing to see here yet. Be patient."
msgstr "Noch nichts zu sehen. Gedulde dich noch ein bisschen."
#: src/component/navigation.vue:377 src/resources/options.js:156
#: src/component/navigation.vue:377 src/options/options.js:156
msgid "Offline"
msgstr "Offline"
#: src/dialog/photo/details.vue:127
msgid "OK"
msgstr "OK"
#: src/component/album/toolbar.vue:103 src/component/photo/toolbar.vue:191
#: src/dialog/album/edit.vue:113
msgid "Oldest first"
msgstr "Älteste zuerst"
#: src/resources/options.js:203
#: src/options/options.js:203
msgid "Once a week"
msgstr "Einmal die Woche"
@ -1206,11 +1211,11 @@ msgstr "Ein Ordner gefunden"
msgid "One result"
msgstr "Ein Ergebnis"
#: src/resources/options.js:123
#: src/options/options.js:123
msgid "Onyx"
msgstr "Onyx"
#: src/resources/options.js:222
#: src/options/options.js:222
msgid "Orange"
msgstr "Orange"
@ -1272,7 +1277,7 @@ msgstr "PhotoPrism™ ist ein registriertes Markenzeichen von Michael Mayer."
msgid "Photos"
msgstr "Fotos"
#: src/resources/options.js:220
#: src/options/options.js:220
msgid "Pink"
msgstr "Pink"
@ -1298,7 +1303,7 @@ msgstr "Bitte lade keine anstößigen Bilder hoch."
msgid "Please enter your name and password to proceed:"
msgstr "Bitte Name und Passwort eingeben, um fortzufahren:"
#: src/resources/options.js:96
#: src/options/options.js:96
msgid "Polish"
msgstr "Polnisch"
@ -1336,7 +1341,7 @@ msgstr "Primärdatei"
msgid "Private"
msgstr "Privat"
#: src/resources/options.js:218
#: src/options/options.js:218
msgid "Purple"
msgstr "Purpur"
@ -1352,11 +1357,11 @@ msgstr "Qualität"
msgid "Random"
msgstr "Zufällig"
#: src/resources/options.js:127
#: src/options/options.js:127
msgid "Raspberry"
msgstr "Raspberry"
#: src/resources/options.js:183
#: src/options/options.js:183
msgid "Raw"
msgstr "Raw"
@ -1374,7 +1379,7 @@ msgstr "Zuletzt hinzugefügt"
msgid "Recently edited"
msgstr "Zuletzt bearbeitet"
#: src/resources/options.js:221
#: src/options/options.js:221
msgid "Red"
msgstr "Rot"
@ -1427,7 +1432,7 @@ msgstr "Passwort wiederholen"
msgid "Review"
msgstr "Bestätigen"
#: src/resources/options.js:100
#: src/options/options.js:100
msgid "Russian"
msgstr "Russisch"
@ -1446,7 +1451,7 @@ msgstr "Scans"
#: src/component/album/toolbar.vue:117 src/component/photo/toolbar.vue:198
#: src/component/photo/toolbar.vue:33 src/dialog/album/edit.vue:123
#: src/dialog/photo/details.vue:427 src/dialog/photo/labels.vue:114
#: src/dialog/photo/details.vue:437 src/dialog/photo/labels.vue:114
#: src/pages/albums.vue:255 src/pages/labels.vue:196
#: src/pages/library/errors.vue:33 src/pages/library/files.vue:177
#: src/pages/places.vue:174 src/routes.js:235 src/share/albums.vue:153
@ -1468,7 +1473,7 @@ msgstr "Suchbegriff zu kurz"
msgid "Season"
msgstr "Jahreszeit"
#: src/resources/options.js:131
#: src/options/options.js:131
msgid "Seaweed"
msgstr "Seegras"
@ -1554,7 +1559,7 @@ msgstr "Ähnlich"
msgid "Size"
msgstr "Größe"
#: src/resources/options.js:149
#: src/options/options.js:149
msgid "Slow"
msgstr "Langsam"
@ -1564,7 +1569,7 @@ msgid "Sort by file name"
msgstr "Dateinamen"
#: src/component/album/toolbar.vue:121 src/component/photo/toolbar.vue:207
#: src/dialog/album/edit.vue:127 src/dialog/photo/details.vue:435
#: src/dialog/album/edit.vue:127 src/dialog/photo/details.vue:445
msgid "Sort Order"
msgstr "Sortierung"
@ -1572,7 +1577,7 @@ msgstr "Sortierung"
msgid "Source"
msgstr "Quelle"
#: src/resources/options.js:88
#: src/options/options.js:88
msgid "Spanish"
msgstr "Spanisch"
@ -1592,7 +1597,7 @@ msgstr "Länder"
msgid "Status"
msgstr "Status"
#: src/resources/options.js:160
#: src/options/options.js:160
msgid "Streets"
msgstr "Straßen"
@ -1600,7 +1605,7 @@ msgstr "Straßen"
msgid "Style"
msgstr "Style"
#: src/dialog/photo/details.vue:447
#: src/dialog/photo/details.vue:457
msgid "Subject"
msgstr "Bildinhalt"
@ -1617,24 +1622,24 @@ msgstr "Sync"
msgid "Sync raw images"
msgstr "RAW-Dateien sichern"
#: src/component/photo/list.vue:114 src/dialog/photo/info.vue:50
#: src/share/photo/list.vue:93
#: src/component/photo/list.vue:137 src/dialog/photo/info.vue:50
#: src/share/photo/list.vue:114
msgid "Taken"
msgstr "Aufgenommen"
#: src/component/photo/toolbar.vue:209 src/dialog/photo/details.vue:437
#: src/component/photo/toolbar.vue:209 src/dialog/photo/details.vue:447
msgid "Taken after"
msgstr "Erstell nach"
#: src/component/photo/toolbar.vue:208 src/dialog/photo/details.vue:436
#: src/component/photo/toolbar.vue:208 src/dialog/photo/details.vue:446
msgid "Taken before"
msgstr "Erstellt vor"
#: src/resources/options.js:227
#: src/options/options.js:227
msgid "Teal"
msgstr "Blaugrün"
#: src/dialog/photo/details.vue:460
#: src/dialog/photo/details.vue:470
msgid "Text too long"
msgstr "Text ist zu lang"
@ -1664,16 +1669,16 @@ msgstr ""
"Smartphone eingebunden, so dass sie lokal geöffnet, bearbeitet und gelöscht "
"werden können."
#: src/dialog/photo/details.vue:285
#: src/dialog/photo/details.vue:305
msgid "Time UTC"
msgstr "Zeit UTC"
#: src/dialog/photo/details.vue:439
#: src/dialog/photo/details.vue:449
msgid "Time Zone"
msgstr "Zeitzone"
#: src/component/photo/list.vue:113 src/dialog/photo/details.vue:440
#: src/dialog/photo/info.vue:44 src/share/photo/list.vue:92
#: src/component/photo/list.vue:136 src/dialog/photo/details.vue:450
#: src/dialog/photo/info.vue:44 src/share/photo/list.vue:113
msgid "Title"
msgstr "Titel"
@ -1689,7 +1694,7 @@ msgstr "nach"
msgid "Token"
msgstr "Code"
#: src/resources/options.js:168
#: src/options/options.js:168
msgid "Topographic"
msgstr "Topographisch"
@ -1697,11 +1702,12 @@ msgstr "Topographisch"
msgid "Trademarks"
msgstr "Markenrechte"
#: src/component/photo/cards.vue:9 src/component/photo/list.vue:100
#: src/component/photo/mosaic.vue:9 src/pages/albums.vue:42
#: src/pages/albums.vue:51 src/pages/labels.vue:38 src/share/albums.vue:19
#: src/share/photo/cards.vue:9 src/share/photo/list.vue:83
#: src/share/photo/mosaic.vue:9
#: src/component/photo/cards.vue:12 src/component/photo/list.vue:12
#: src/component/photo/list.vue:123 src/component/photo/mosaic.vue:12
#: src/pages/albums.vue:42 src/pages/albums.vue:51 src/pages/labels.vue:38
#: src/share/albums.vue:19 src/share/photo/cards.vue:12
#: src/share/photo/list.vue:12 src/share/photo/list.vue:104
#: src/share/photo/mosaic.vue:12
msgid "Try again using other filters or keywords."
msgstr "Versuche es mit anderen Filtern oder Suchbegriffen."
@ -1714,14 +1720,13 @@ msgstr "Typ"
msgid "UID"
msgstr "UID"
#: src/dialog/photo/details.vue:421 src/dialog/photo/info.vue:241
#: src/dialog/photo/details.vue:431 src/dialog/photo/info.vue:241
#: src/model/album.js:122 src/model/photo.js:400 src/model/photo.js:414
#: src/model/photo.js:437 src/model/photo.js:451 src/model/photo.js:528
#: src/model/photo.js:541 src/pages/library/errors.vue:203
#: src/model/photo.js:541 src/options/options.js:15 src/options/options.js:29
#: src/options/options.js:43 src/options/options.js:57
#: src/options/options.js:69 src/pages/library/errors.vue:203
#: src/pages/library/errors.vue:210 src/pages/library/logs.vue:32
#: src/resources/options.js:15 src/resources/options.js:29
#: src/resources/options.js:43 src/resources/options.js:57
#: src/resources/options.js:69
msgid "Unknown"
msgstr "Unbekannt"
@ -1794,7 +1799,7 @@ msgid "Username"
msgstr "Nutzername"
#: src/model/file.js:172 src/model/photo.js:488 src/model/photo.js:502
#: src/resources/options.js:191
#: src/options/options.js:191
msgid "Video"
msgstr "Video"
@ -1803,7 +1808,7 @@ msgid "Videos"
msgstr "Videos"
#: src/component/album/toolbar.vue:118 src/component/photo/toolbar.vue:199
#: src/dialog/album/edit.vue:124 src/dialog/photo/details.vue:428
#: src/dialog/album/edit.vue:124 src/dialog/photo/details.vue:438
msgid "View"
msgstr "Ansicht"
@ -1828,7 +1833,7 @@ msgstr "WebDAV Upload"
msgid "Whatever it is, we'd love to hear from you!"
msgstr "Wir freuen uns, von dir zu hören!"
#: src/resources/options.js:231
#: src/options/options.js:231
msgid "White"
msgstr "Weiß"
@ -1836,12 +1841,12 @@ msgstr "Weiß"
msgid "Who we are"
msgstr "Über uns"
#: src/component/photo/toolbar.vue:203 src/dialog/photo/details.vue:432
#: src/dialog/photo/details.vue:224
#: src/component/photo/toolbar.vue:203 src/dialog/photo/details.vue:442
#: src/dialog/photo/details.vue:240
msgid "Year"
msgstr "Jahr"
#: src/resources/options.js:224
#: src/options/options.js:224
msgid "Yellow"
msgstr "Gelb"
@ -1875,6 +1880,9 @@ msgstr ""
"Das Bewerben kommerzieller Produkte, Waren oder Dienstleistungen ist nur "
"nach vorheriger, schriftlicher Genehmigung erlaubt."
#~ msgid "OK"
#~ msgstr "OK"
#~ msgid "Title Source"
#~ msgstr "Herkunft des Titels"
@ -1912,9 +1920,6 @@ msgstr ""
#~ "Neue Alben können über das Kontextmenü erstellt werden, nachdem Fotos "
#~ "oder Videos ausgewählt wurden."
#~ msgid "Couldn't find any results"
#~ msgstr "Leider nichts gefunden"
#~ msgid "No labels matched your search"
#~ msgstr "Keine Labels entsprechen deinen Suchkriterien"

File diff suppressed because one or more lines are too long

View file

@ -31,15 +31,15 @@ msgstr ""
msgid "%{n} results"
msgstr ""
#: src/resources/options.js:198
#: src/options/options.js:198
msgid "1 hour"
msgstr ""
#: src/resources/options.js:200
#: src/options/options.js:200
msgid "12 hours"
msgstr ""
#: src/resources/options.js:199
#: src/options/options.js:199
msgid "4 hours"
msgstr ""
@ -96,23 +96,23 @@ msgstr ""
msgid "Added"
msgstr ""
#: src/resources/options.js:208
#: src/options/options.js:208
msgid "After 1 day"
msgstr ""
#: src/resources/options.js:209
#: src/options/options.js:209
msgid "After 3 days"
msgstr ""
#: src/resources/options.js:210
#: src/options/options.js:210
msgid "After 7 days"
msgstr ""
#: src/resources/options.js:212
#: src/options/options.js:212
msgid "After one month"
msgstr ""
#: src/resources/options.js:214
#: src/options/options.js:214
msgid "After one year"
msgstr ""
@ -120,11 +120,11 @@ msgstr ""
msgid "After selecting photos or videos from search results, you can add them to existing or new albums using the context menu."
msgstr ""
#: src/resources/options.js:213
#: src/options/options.js:213
msgid "After two months"
msgstr ""
#: src/resources/options.js:211
#: src/options/options.js:211
msgid "After two weeks"
msgstr ""
@ -214,7 +214,7 @@ msgstr ""
msgid "Altitude"
msgstr ""
#: src/dialog/photo/details.vue:443
#: src/dialog/photo/details.vue:453
msgid "Altitude (m)"
msgstr ""
@ -238,13 +238,13 @@ msgstr ""
msgid "Apply"
msgstr ""
#: src/component/photo/cards.vue:124
#: src/component/photo/cards.vue:127
#: src/dialog/photo/details.vue:123
msgid "Approve"
msgstr ""
#: src/component/navigation.vue:103
#: src/component/photo/cards.vue:121
#: src/component/photo/cards.vue:124
#: src/component/photo/clipboard.vue:155
#: src/pages/settings/general.vue:415
#: src/routes.js:178
@ -272,7 +272,7 @@ msgstr ""
msgid "Are you sure you want to delete this account?"
msgstr ""
#: src/dialog/photo/details.vue:448
#: src/dialog/photo/details.vue:458
msgid "Artist"
msgstr ""
@ -288,15 +288,15 @@ msgstr ""
msgid "Backup"
msgstr ""
#: src/resources/options.js:233
#: src/options/options.js:233
msgid "Black"
msgstr ""
#: src/resources/options.js:229
#: src/options/options.js:229
msgid "Blue"
msgstr ""
#: src/resources/options.js:230
#: src/options/options.js:230
msgid "Brown"
msgstr ""
@ -319,11 +319,11 @@ msgid "Calendar"
msgstr ""
#: src/component/album/toolbar.vue:120
#: src/component/photo/list.vue:115
#: src/component/photo/list.vue:138
#: src/component/photo/toolbar.vue:201
#: src/dialog/album/edit.vue:126
#: src/dialog/photo/details.vue:430
#: src/share/photo/list.vue:94
#: src/dialog/photo/details.vue:440
#: src/share/photo/list.vue:115
msgid "Camera"
msgstr ""
@ -360,7 +360,7 @@ msgstr ""
#: src/component/album/toolbar.vue:122
#: src/component/photo/toolbar.vue:206
#: src/dialog/album/edit.vue:128
#: src/dialog/photo/details.vue:434
#: src/dialog/photo/details.vue:444
#: src/pages/albums.vue:257
#: src/share/albums.vue:155
msgid "Category"
@ -398,7 +398,7 @@ msgid "Codec"
msgstr ""
#: src/component/photo/toolbar.vue:205
#: src/dialog/photo/details.vue:433
#: src/dialog/photo/details.vue:443
msgid "Color"
msgstr ""
@ -450,31 +450,42 @@ msgstr ""
msgid "Copy"
msgstr ""
#: src/dialog/photo/details.vue:449
#: src/dialog/photo/details.vue:459
msgid "Copyright"
msgstr ""
#: src/component/photo/cards.vue:6
#: src/component/photo/mosaic.vue:6
#: src/component/photo/cards.vue:9
#: src/component/photo/list.vue:9
#: src/component/photo/mosaic.vue:9
#: src/pages/albums.vue:39
#: src/pages/albums.vue:48
#: src/pages/labels.vue:35
#: src/pages/library/files.vue:36
#: src/share/albums.vue:16
#: src/share/photo/cards.vue:6
#: src/share/photo/mosaic.vue:6
#: src/share/photo/cards.vue:9
#: src/share/photo/list.vue:9
#: src/share/photo/mosaic.vue:9
msgid "Couldn't find anything"
msgstr ""
#: src/component/photo/list.vue:98
#: src/share/photo/list.vue:81
#: src/component/photo/list.vue:121
#: src/share/photo/list.vue:102
msgid "Couldn't find anything."
msgstr ""
#: src/component/photo/cards.vue:6
#: src/component/photo/list.vue:6
#: src/component/photo/mosaic.vue:6
#: src/share/photo/cards.vue:6
#: src/share/photo/list.vue:6
#: src/share/photo/mosaic.vue:6
msgid "Couldn't find recently edited"
msgstr ""
#: src/component/album/toolbar.vue:119
#: src/component/photo/toolbar.vue:200
#: src/dialog/album/edit.vue:125
#: src/dialog/photo/details.vue:429
#: src/dialog/photo/details.vue:439
msgid "Country"
msgstr ""
@ -494,23 +505,23 @@ msgstr ""
msgid "Current Password"
msgstr ""
#: src/resources/options.js:228
#: src/options/options.js:228
msgid "Cyan"
msgstr ""
#: src/resources/options.js:111
#: src/options/options.js:111
msgid "Cyano"
msgstr ""
#: src/resources/options.js:201
#: src/options/options.js:201
msgid "Daily"
msgstr ""
#: src/dialog/photo/details.vue:166
#: src/dialog/photo/details.vue:174
msgid "Day"
msgstr ""
#: src/resources/options.js:107
#: src/options/options.js:107
msgid "Default"
msgstr ""
@ -530,7 +541,7 @@ msgstr ""
#: src/component/album/toolbar.vue:116
#: src/dialog/album/edit.vue:122
#: src/dialog/photo/details.vue:451
#: src/dialog/photo/details.vue:461
msgid "Description"
msgstr ""
@ -558,6 +569,7 @@ msgstr ""
msgid "Discover"
msgstr ""
#: src/dialog/photo/details.vue:127
#: src/dialog/share.vue:156
msgid "Done"
msgstr ""
@ -604,7 +616,7 @@ msgstr ""
msgid "Duplicates will be skipped and only appear once."
msgstr ""
#: src/resources/options.js:92
#: src/options/options.js:92
msgid "Dutch"
msgstr ""
@ -636,7 +648,7 @@ msgstr ""
msgid "Enabled"
msgstr ""
#: src/resources/options.js:76
#: src/options/options.js:76
msgid "English"
msgstr ""
@ -648,7 +660,7 @@ msgstr ""
msgid "Errors"
msgstr ""
#: src/resources/options.js:202
#: src/options/options.js:202
msgid "Every two days"
msgstr ""
@ -661,11 +673,11 @@ msgstr ""
msgid "Expires"
msgstr ""
#: src/dialog/photo/details.vue:444
#: src/dialog/photo/details.vue:454
msgid "Exposure"
msgstr ""
#: src/dialog/photo/details.vue:445
#: src/dialog/photo/details.vue:455
msgid "F Number"
msgstr ""
@ -686,7 +698,7 @@ msgstr ""
msgid "Failure while importing uploaded files"
msgstr ""
#: src/resources/options.js:141
#: src/options/options.js:141
msgid "Fast"
msgstr ""
@ -720,7 +732,7 @@ msgstr ""
msgid "Files with sequential names like 'IMG_1234 (2)' or 'IMG_1234 copy 2' belong to the same photo."
msgstr ""
#: src/dialog/photo/details.vue:446
#: src/dialog/photo/details.vue:456
msgid "Focal Length"
msgstr ""
@ -754,7 +766,7 @@ msgstr ""
msgid "Folders"
msgstr ""
#: src/resources/options.js:84
#: src/options/options.js:84
msgid "French"
msgstr ""
@ -762,19 +774,19 @@ msgstr ""
msgid "General"
msgstr ""
#: src/resources/options.js:80
#: src/options/options.js:80
msgid "German"
msgstr ""
#: src/resources/options.js:223
#: src/options/options.js:223
msgid "Gold"
msgstr ""
#: src/resources/options.js:226
#: src/options/options.js:226
msgid "Green"
msgstr ""
#: src/resources/options.js:232
#: src/options/options.js:232
msgid "Grey"
msgstr ""
@ -814,12 +826,13 @@ msgstr ""
msgid "Hide Private"
msgstr ""
#: src/resources/options.js:164
#: src/options/options.js:164
msgid "Hybrid"
msgstr ""
#: src/component/photo/cards.vue:10
#: src/component/photo/mosaic.vue:10
#: src/component/photo/cards.vue:13
#: src/component/photo/list.vue:13
#: src/component/photo/mosaic.vue:13
#: src/pages/library/files.vue:40
msgid "If a file you expect is missing, please re-index your library and wait until indexing has been completed."
msgstr ""
@ -828,7 +841,7 @@ msgstr ""
msgid "image"
msgstr ""
#: src/resources/options.js:179
#: src/options/options.js:179
msgid "Image"
msgstr ""
@ -882,7 +895,7 @@ msgstr ""
msgid "Interval"
msgstr ""
#: src/dialog/photo/details.vue:534
#: src/dialog/photo/details.vue:544
msgid "Invalid date"
msgstr ""
@ -894,7 +907,7 @@ msgstr ""
msgid "JPEGs and thumbnails are automatically rendered as needed."
msgstr ""
#: src/dialog/photo/details.vue:452
#: src/dialog/photo/details.vue:462
msgid "Keywords"
msgstr ""
@ -919,7 +932,7 @@ msgstr ""
msgid "Labels deleted"
msgstr ""
#: src/dialog/photo/details.vue:438
#: src/dialog/photo/details.vue:448
#: src/pages/settings/general.vue:265
msgid "Language"
msgstr ""
@ -928,17 +941,17 @@ msgstr ""
msgid "Last Backup"
msgstr ""
#: src/dialog/photo/details.vue:441
#: src/dialog/photo/details.vue:451
#: src/dialog/photo/info.vue:109
msgid "Latitude"
msgstr ""
#: src/resources/options.js:115
#: src/options/options.js:115
msgid "Lavender"
msgstr ""
#: src/component/photo/toolbar.vue:202
#: src/dialog/photo/details.vue:431
#: src/dialog/photo/details.vue:441
msgid "Lens"
msgstr ""
@ -958,12 +971,12 @@ msgstr ""
#: src/component/navigation.vue:339
#: src/component/navigation.vue:33
#: src/dialog/photo/details.vue:450
#: src/dialog/photo/details.vue:460
#: src/pages/about/license.vue:4
msgid "License"
msgstr ""
#: src/resources/options.js:225
#: src/options/options.js:225
msgid "Lime"
msgstr ""
@ -980,11 +993,11 @@ msgstr ""
msgid "List"
msgstr ""
#: src/resources/options.js:187
#: src/options/options.js:187
msgid "Live"
msgstr ""
#: src/dialog/photo/details.vue:255
#: src/dialog/photo/details.vue:275
msgid "Local Time"
msgstr ""
@ -992,9 +1005,9 @@ msgstr ""
msgid "location"
msgstr ""
#: src/component/photo/list.vue:117
#: src/component/photo/list.vue:140
#: src/dialog/album/edit.vue:137
#: src/share/photo/list.vue:95
#: src/share/photo/list.vue:117
msgid "Location"
msgstr ""
@ -1015,12 +1028,12 @@ msgstr ""
msgid "Logs"
msgstr ""
#: src/dialog/photo/details.vue:442
#: src/dialog/photo/details.vue:452
#: src/dialog/photo/info.vue:117
msgid "Longitude"
msgstr ""
#: src/resources/options.js:219
#: src/options/options.js:219
msgid "Magenta"
msgstr ""
@ -1036,7 +1049,7 @@ msgstr ""
msgid "Manual Upload"
msgstr ""
#: src/resources/options.js:145
#: src/options/options.js:145
msgid "Medium"
msgstr ""
@ -1056,12 +1069,12 @@ msgid "Monochrome"
msgstr ""
#: src/component/photo/toolbar.vue:204
#: src/dialog/photo/details.vue:195
#: src/dialog/photo/details.vue:207
msgid "Month"
msgstr ""
#: src/resources/options.js:119
#: src/resources/options.js:172
#: src/options/options.js:119
#: src/options/options.js:172
msgid "Moonlight"
msgstr ""
@ -1112,14 +1125,14 @@ msgid_plural "plural"
msgstr[0] ""
msgstr[1] ""
#: src/component/photo/list.vue:117
#: src/component/photo/list.vue:140
#: src/dialog/account/edit.vue:488
#: src/dialog/album/edit.vue:121
#: src/dialog/photo/files.vue:60
#: src/dialog/photo/files.vue:204
#: src/dialog/photo/info.vue:30
#: src/pages/login.vue:72
#: src/share/photo/list.vue:95
#: src/share/photo/list.vue:117
msgid "Name"
msgstr ""
@ -1131,9 +1144,9 @@ msgstr ""
msgid "Name too long"
msgstr ""
#: src/options/options.js:197
#: src/options/options.js:207
#: src/pages/settings/sync.vue:129
#: src/resources/options.js:197
#: src/resources/options.js:207
msgid "Never"
msgstr ""
@ -1185,17 +1198,19 @@ msgstr ""
msgid "No warnings or error containing this keyword. Note that search is case-sensitive."
msgstr ""
#: src/component/photo/cards.vue:12
#: src/component/photo/cards.vue:15
#: src/component/photo/cards.vue:1
#: src/component/photo/list.vue:103
#: src/component/photo/mosaic.vue:12
#: src/component/photo/list.vue:15
#: src/component/photo/list.vue:1
#: src/component/photo/list.vue:126
#: src/component/photo/mosaic.vue:15
#: src/component/photo/mosaic.vue:1
#: src/dialog/upload.vue:50
#: src/pages/settings/general.vue:99
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr ""
#: src/resources/options.js:137
#: src/options/options.js:137
msgid "None"
msgstr ""
@ -1223,7 +1238,7 @@ msgstr ""
msgid "Note: Updating the password will not revoke access from already authenticated users."
msgstr ""
#: src/dialog/photo/details.vue:453
#: src/dialog/photo/details.vue:463
msgid "Notes"
msgstr ""
@ -1232,21 +1247,17 @@ msgid "Nothing to see here yet. Be patient."
msgstr ""
#: src/component/navigation.vue:377
#: src/resources/options.js:156
#: src/options/options.js:156
msgid "Offline"
msgstr ""
#: src/dialog/photo/details.vue:127
msgid "OK"
msgstr ""
#: src/component/album/toolbar.vue:103
#: src/component/photo/toolbar.vue:191
#: src/dialog/album/edit.vue:113
msgid "Oldest first"
msgstr ""
#: src/resources/options.js:203
#: src/options/options.js:203
msgid "Once a week"
msgstr ""
@ -1272,11 +1283,11 @@ msgstr ""
msgid "One result"
msgstr ""
#: src/resources/options.js:123
#: src/options/options.js:123
msgid "Onyx"
msgstr ""
#: src/resources/options.js:222
#: src/options/options.js:222
msgid "Orange"
msgstr ""
@ -1339,7 +1350,7 @@ msgstr ""
msgid "Photos"
msgstr ""
#: src/resources/options.js:220
#: src/options/options.js:220
msgid "Pink"
msgstr ""
@ -1370,7 +1381,7 @@ msgstr ""
msgid "Please enter your name and password to proceed:"
msgstr ""
#: src/resources/options.js:96
#: src/options/options.js:96
msgid "Polish"
msgstr ""
@ -1411,7 +1422,7 @@ msgstr ""
msgid "Private"
msgstr ""
#: src/resources/options.js:218
#: src/options/options.js:218
msgid "Purple"
msgstr ""
@ -1427,11 +1438,11 @@ msgstr ""
msgid "Random"
msgstr ""
#: src/resources/options.js:127
#: src/options/options.js:127
msgid "Raspberry"
msgstr ""
#: src/resources/options.js:183
#: src/options/options.js:183
msgid "Raw"
msgstr ""
@ -1451,7 +1462,7 @@ msgstr ""
msgid "Recently edited"
msgstr ""
#: src/resources/options.js:221
#: src/options/options.js:221
msgid "Red"
msgstr ""
@ -1505,7 +1516,7 @@ msgstr ""
msgid "Review"
msgstr ""
#: src/resources/options.js:100
#: src/options/options.js:100
msgid "Russian"
msgstr ""
@ -1527,7 +1538,7 @@ msgstr ""
#: src/component/photo/toolbar.vue:198
#: src/component/photo/toolbar.vue:33
#: src/dialog/album/edit.vue:123
#: src/dialog/photo/details.vue:427
#: src/dialog/photo/details.vue:437
#: src/dialog/photo/labels.vue:114
#: src/pages/albums.vue:255
#: src/pages/labels.vue:196
@ -1559,7 +1570,7 @@ msgstr ""
msgid "Season"
msgstr ""
#: src/resources/options.js:131
#: src/options/options.js:131
msgid "Seaweed"
msgstr ""
@ -1653,7 +1664,7 @@ msgstr ""
msgid "Size"
msgstr ""
#: src/resources/options.js:149
#: src/options/options.js:149
msgid "Slow"
msgstr ""
@ -1666,7 +1677,7 @@ msgstr ""
#: src/component/album/toolbar.vue:121
#: src/component/photo/toolbar.vue:207
#: src/dialog/album/edit.vue:127
#: src/dialog/photo/details.vue:435
#: src/dialog/photo/details.vue:445
msgid "Sort Order"
msgstr ""
@ -1674,7 +1685,7 @@ msgstr ""
msgid "Source"
msgstr ""
#: src/resources/options.js:88
#: src/options/options.js:88
msgid "Spanish"
msgstr ""
@ -1694,7 +1705,7 @@ msgstr ""
msgid "Status"
msgstr ""
#: src/resources/options.js:160
#: src/options/options.js:160
msgid "Streets"
msgstr ""
@ -1702,7 +1713,7 @@ msgstr ""
msgid "Style"
msgstr ""
#: src/dialog/photo/details.vue:447
#: src/dialog/photo/details.vue:457
msgid "Subject"
msgstr ""
@ -1718,27 +1729,27 @@ msgstr ""
msgid "Sync raw images"
msgstr ""
#: src/component/photo/list.vue:114
#: src/component/photo/list.vue:137
#: src/dialog/photo/info.vue:50
#: src/share/photo/list.vue:93
#: src/share/photo/list.vue:114
msgid "Taken"
msgstr ""
#: src/component/photo/toolbar.vue:209
#: src/dialog/photo/details.vue:437
#: src/dialog/photo/details.vue:447
msgid "Taken after"
msgstr ""
#: src/component/photo/toolbar.vue:208
#: src/dialog/photo/details.vue:436
#: src/dialog/photo/details.vue:446
msgid "Taken before"
msgstr ""
#: src/resources/options.js:227
#: src/options/options.js:227
msgid "Teal"
msgstr ""
#: src/dialog/photo/details.vue:460
#: src/dialog/photo/details.vue:470
msgid "Text too long"
msgstr ""
@ -1759,18 +1770,18 @@ msgstr ""
msgid "This mounts the originals folder as a network drive and allows you to open, edit, and delete files from your computer or smartphone as if they were local."
msgstr ""
#: src/dialog/photo/details.vue:285
#: src/dialog/photo/details.vue:305
msgid "Time UTC"
msgstr ""
#: src/dialog/photo/details.vue:439
#: src/dialog/photo/details.vue:449
msgid "Time Zone"
msgstr ""
#: src/component/photo/list.vue:113
#: src/dialog/photo/details.vue:440
#: src/component/photo/list.vue:136
#: src/dialog/photo/details.vue:450
#: src/dialog/photo/info.vue:44
#: src/share/photo/list.vue:92
#: src/share/photo/list.vue:113
msgid "Title"
msgstr ""
@ -1788,7 +1799,7 @@ msgstr ""
msgid "Token"
msgstr ""
#: src/resources/options.js:168
#: src/options/options.js:168
msgid "Topographic"
msgstr ""
@ -1796,16 +1807,18 @@ msgstr ""
msgid "Trademarks"
msgstr ""
#: src/component/photo/cards.vue:9
#: src/component/photo/list.vue:100
#: src/component/photo/mosaic.vue:9
#: src/component/photo/cards.vue:12
#: src/component/photo/list.vue:12
#: src/component/photo/list.vue:123
#: src/component/photo/mosaic.vue:12
#: src/pages/albums.vue:42
#: src/pages/albums.vue:51
#: src/pages/labels.vue:38
#: src/share/albums.vue:19
#: src/share/photo/cards.vue:9
#: src/share/photo/list.vue:83
#: src/share/photo/mosaic.vue:9
#: src/share/photo/cards.vue:12
#: src/share/photo/list.vue:12
#: src/share/photo/list.vue:104
#: src/share/photo/mosaic.vue:12
msgid "Try again using other filters or keywords."
msgstr ""
@ -1820,7 +1833,7 @@ msgstr ""
msgid "UID"
msgstr ""
#: src/dialog/photo/details.vue:421
#: src/dialog/photo/details.vue:431
#: src/dialog/photo/info.vue:241
#: src/model/album.js:122
#: src/model/photo.js:400
@ -1829,14 +1842,14 @@ msgstr ""
#: src/model/photo.js:451
#: src/model/photo.js:528
#: src/model/photo.js:541
#: src/options/options.js:15
#: src/options/options.js:29
#: src/options/options.js:43
#: src/options/options.js:57
#: src/options/options.js:69
#: src/pages/library/errors.vue:203
#: src/pages/library/errors.vue:210
#: src/pages/library/logs.vue:32
#: src/resources/options.js:15
#: src/resources/options.js:29
#: src/resources/options.js:43
#: src/resources/options.js:57
#: src/resources/options.js:69
msgid "Unknown"
msgstr ""
@ -1918,7 +1931,7 @@ msgstr ""
#: src/model/file.js:172
#: src/model/photo.js:488
#: src/model/photo.js:502
#: src/resources/options.js:191
#: src/options/options.js:191
msgid "Video"
msgstr ""
@ -1930,7 +1943,7 @@ msgstr ""
#: src/component/album/toolbar.vue:118
#: src/component/photo/toolbar.vue:199
#: src/dialog/album/edit.vue:124
#: src/dialog/photo/details.vue:428
#: src/dialog/photo/details.vue:438
msgid "View"
msgstr ""
@ -1951,7 +1964,7 @@ msgstr ""
msgid "Whatever it is, we'd love to hear from you!"
msgstr ""
#: src/resources/options.js:231
#: src/options/options.js:231
msgid "White"
msgstr ""
@ -1960,12 +1973,12 @@ msgid "Who we are"
msgstr ""
#: src/component/photo/toolbar.vue:203
#: src/dialog/photo/details.vue:432
#: src/dialog/photo/details.vue:224
#: src/dialog/photo/details.vue:442
#: src/dialog/photo/details.vue:240
msgid "Year"
msgstr ""
#: src/resources/options.js:224
#: src/options/options.js:224
msgid "Yellow"
msgstr ""

View file

@ -3,7 +3,10 @@
<v-card v-if="photos.length === 0" class="p-photos-empty secondary-light lighten-1 ma-1" flat>
<v-card-title primary-title>
<div>
<h3 class="title ma-0 pa-0">
<h3 class="title ma-0 pa-0" v-if="filter.order === 'edited'">
<translate>Couldn't find recently edited</translate>
</h3>
<h3 class="title ma-0 pa-0" v-else>
<translate>Couldn't find anything</translate>
</h3>
<p class="mt-4 mb-0 pa-0">

View file

@ -1,69 +1,90 @@
<template>
<v-data-table
:headers="listColumns"
:items="photos"
hide-actions
class="elevation-0 p-photos p-photo-list p-results"
disable-initial-sort
item-key="ID"
v-model="selected"
:no-data-text="notFoundMessage"
>
<template slot="items" slot-scope="props">
<td style="user-select: none;" :data-uid="props.item.UID">
<v-img class="accent lighten-2 clickable" aspect-ratio="1"
:src="props.item.thumbnailUrl('tile_50')"
@mousedown="onMouseDown($event, props.index)"
@contextmenu="onContextMenu($event, props.index)"
@click.stop.prevent="onClick($event, props.index)"
>
<v-layout
slot="placeholder"
fill-height
align-center
justify-center
ma-0
<div>
<v-card v-if="photos.length === 0" class="p-photos-empty secondary-light lighten-1 ma-1" flat>
<v-card-title primary-title>
<div>
<h3 class="title ma-0 pa-0" v-if="filter.order === 'edited'">
<translate>Couldn't find recently edited</translate>
</h3>
<h3 class="title ma-0 pa-0" v-else>
<translate>Couldn't find anything</translate>
</h3>
<p class="mt-4 mb-0 pa-0">
<translate>Try again using other filters or keywords.</translate>
</p>
</div>
</v-card-title>
</v-card>
<v-data-table v-else
:headers="listColumns"
:items="photos"
hide-actions
class="elevation-0 p-photos p-photo-list p-results"
disable-initial-sort
item-key="ID"
v-model="selected"
:no-data-text="notFoundMessage"
>
<template slot="items" slot-scope="props">
<td style="user-select: none;" :data-uid="props.item.UID">
<v-img class="accent lighten-2 clickable" aspect-ratio="1"
:src="props.item.thumbnailUrl('tile_50')"
@mousedown="onMouseDown($event, props.index)"
@contextmenu="onContextMenu($event, props.index)"
@click.stop.prevent="onClick($event, props.index)"
>
<v-progress-circular indeterminate
color="accent lighten-5"></v-progress-circular>
</v-layout>
<v-layout
slot="placeholder"
fill-height
align-center
justify-center
ma-0
>
<v-progress-circular indeterminate
color="accent lighten-5"></v-progress-circular>
</v-layout>
<v-btn v-if="selection.length && $clipboard.has(props.item)" :ripple="false"
flat icon large absolute class="p-photo-select">
<v-icon color="white" class="t-select t-on">check_circle</v-icon>
</v-btn>
<v-btn v-else-if="!selection.length && props.item.Type === 'video' && props.item.isPlayable()" :ripple="false"
flat icon large absolute class="p-photo-play opacity-75"
@click.stop.prevent="openPhoto(props.index, true)">
<v-icon color="white" class="action-play">play_arrow</v-icon>
</v-btn>
</v-img>
</td>
<v-btn v-if="selection.length && $clipboard.has(props.item)" :ripple="false"
flat icon large absolute class="p-photo-select">
<v-icon color="white" class="t-select t-on">check_circle</v-icon>
</v-btn>
<v-btn v-else-if="!selection.length && props.item.Type === 'video' && props.item.isPlayable()"
:ripple="false"
flat icon large absolute class="p-photo-play opacity-75"
@click.stop.prevent="openPhoto(props.index, true)">
<v-icon color="white" class="action-play">play_arrow</v-icon>
</v-btn>
</v-img>
</td>
<td class="p-photo-desc clickable" :data-uid="props.item.UID" @click.stop.prevent="openPhoto(props.index, false)" style="user-select: none;">
{{ props.item.Title }}
</td>
<td class="p-photo-desc hidden-xs-only" :title="props.item.getDateString()" @click.stop.prevent="openPhoto(props.index, false)" style="user-select: none;">
{{ props.item.shortDateString() }}
</td>
<td class="p-photo-desc hidden-sm-and-down" style="user-select: none;">
{{ props.item.CameraMake }} {{ props.item.CameraModel }}
</td>
<td class="p-photo-desc hidden-xs-only">
<button @click.exact="downloadFile(props.index)"
title="Name" v-if="filter.order === 'name'">
{{ props.item.FileName }}
</button>
<button v-else-if="props.item.Country !== 'zz' && showLocation" @click.stop.prevent="openPhoto(props.index, false)"
style="user-select: none;">
{{ props.item.locationInfo() }}
</button>
<span v-else>
<td class="p-photo-desc clickable" :data-uid="props.item.UID"
@click.stop.prevent="openPhoto(props.index, false)" style="user-select: none;">
{{ props.item.Title }}
</td>
<td class="p-photo-desc hidden-xs-only" :title="props.item.getDateString()"
@click.stop.prevent="openPhoto(props.index, false)" style="user-select: none;">
{{ props.item.shortDateString() }}
</td>
<td class="p-photo-desc hidden-sm-and-down" style="user-select: none;">
{{ props.item.CameraMake }} {{ props.item.CameraModel }}
</td>
<td class="p-photo-desc hidden-xs-only">
<button @click.exact="downloadFile(props.index)"
title="Name" v-if="filter.order === 'name'">
{{ props.item.FileName }}
</button>
<button v-else-if="props.item.Country !== 'zz' && showLocation"
@click.stop.prevent="openPhoto(props.index, false)"
style="user-select: none;">
{{ props.item.locationInfo() }}
</button>
<span v-else>
{{ props.item.locationInfo() }}
</span>
</td>
</template>
</v-data-table>
</td>
</template>
</v-data-table>
</div>
</template>
<script>
export default {
@ -92,7 +113,12 @@
{text: this.$gettext('Title'), value: 'Title', sortable: false},
{text: this.$gettext('Taken'), class: 'hidden-xs-only', value: 'TakenAt', sortable: false},
{text: this.$gettext('Camera'), class: 'hidden-sm-and-down', value: 'CameraModel', sortable: false},
{text: showName ? this.$gettext('Name') : this.$gettext('Location'), class: 'hidden-xs-only', value: showName ? 'FileName' : 'PlaceLabel', sortable: false},
{
text: showName ? this.$gettext('Name') : this.$gettext('Location'),
class: 'hidden-xs-only',
value: showName ? 'FileName' : 'PlaceLabel',
sortable: false
},
],
showName: showName,
showLocation: this.$config.settings().features.places,
@ -145,10 +171,10 @@
} else {
this.$clipboard.toggle(this.photos[index]);
}
} else if(this.photos[index]) {
} else if (this.photos[index]) {
let photo = this.photos[index];
if(photo.Type === 'video' && photo.isPlayable()) {
if (photo.Type === 'video' && photo.isPlayable()) {
this.openPhoto(index, true);
} else {
this.openPhoto(index, false);

View file

@ -3,7 +3,10 @@
<v-card v-if="photos.length === 0" class="p-photos-empty secondary-light lighten-1 ma-1" flat>
<v-card-title primary-title>
<div>
<h3 class="title ma-0 pa-0">
<h3 class="title ma-0 pa-0" v-if="filter.order === 'edited'">
<translate>Couldn't find recently edited</translate>
</h3>
<h3 class="title ma-0 pa-0" v-else>
<translate>Couldn't find anything</translate>
</h3>
<p class="mt-4 mb-0 pa-0">