From a90264a399eb4aa1b2bb8ae0915bdb0666d6d6ef Mon Sep 17 00:00:00 2001 From: MaertHaekkinen Date: Mon, 8 Jul 2024 22:37:15 +0300 Subject: [PATCH] Add soft delete option to photos --- .../ajapaik/locale/en/LC_MESSAGES/django.po | 847 +++++++++--------- .../migrations/0026_photo_soft_deleted.py | 17 + ajapaik/ajapaik/models.py | 6 +- 3 files changed, 460 insertions(+), 410 deletions(-) create mode 100644 ajapaik/ajapaik/migrations/0026_photo_soft_deleted.py diff --git a/ajapaik/ajapaik/locale/en/LC_MESSAGES/django.po b/ajapaik/ajapaik/locale/en/LC_MESSAGES/django.po index d2e2e419a..c575eb8b3 100644 --- a/ajapaik/ajapaik/locale/en/LC_MESSAGES/django.po +++ b/ajapaik/ajapaik/locale/en/LC_MESSAGES/django.po @@ -5,104 +5,105 @@ # Translators: # Translators: msgid "" -msgstr "Project-Id-Version: Ajapaik\nReport-Msgid-Bugs-To: \nPOT-Creation-Date: 2021-10-10 18:17+0300\nPO-Revision-Date: 2019-02-16 22:56+0000\nLast-Translator: Lauri Elias\nLanguage-Team: English (http://www.transifex.com/estonian-photographic-heritage-society/ajapaik/language/en/)\nLanguage: en\nMIME-Version: 1.0\nContent-Type: text/plain; charset=UTF-8\nContent-Transfer-Encoding: 8bit\nPlural-Forms: nplurals=2; plural=(n != 1);\n" +msgstr "Project-Id-Version: Ajapaik\nReport-Msgid-Bugs-To: \nPOT-Creation-Date: 2024-07-08 22:28+0300\nPO-Revision-Date: 2019-02-16 22:56+0000\nLast-Translator: Lauri Elias\nLanguage-Team: English (http://www.transifex.com/estonian-photographic-heritage-society/ajapaik/language/en/)\nLanguage: en\nMIME-Version: 1.0\nContent-Type: text/plain; charset=UTF-8\nContent-Transfer-Encoding: 8bit\nPlural-Forms: nplurals=2; plural=(n != 1);\n" #: ajapaik/ajapaik/admin.py:87 msgid "Invert colors" msgstr "Invert colors" -#: ajapaik/ajapaik/api.py:76 +#: ajapaik/ajapaik/api.py:78 msgid "Add at least flip, invert or rotate parameter to the request" msgstr "Add at least flip, invert or rotate parameter to the request" -#: ajapaik/ajapaik/api.py:77 +#: ajapaik/ajapaik/api.py:79 msgid "Add at least scene or viewpoint_elevation parameter to the request" msgstr "Add at least scene or viewpoint_elevation parameter to the request" -#: ajapaik/ajapaik/api.py:78 +#: ajapaik/ajapaik/api.py:80 msgid "Contributions and settings from the other account were added to current" msgstr "Contributions and settings from the other account were added to current" -#: ajapaik/ajapaik/api.py:79 +#: ajapaik/ajapaik/api.py:81 msgid "Expired token" msgstr "Expired token" -#: ajapaik/ajapaik/api.py:80 +#: ajapaik/ajapaik/api.py:82 msgid "Invalid token" msgstr "Invalid token" -#: ajapaik/ajapaik/api.py:81 +#: ajapaik/ajapaik/api.py:83 msgid "Missing parameter photo_ids" msgstr "Missing parameter photo_ids" -#: ajapaik/ajapaik/api.py:82 +#: ajapaik/ajapaik/api.py:84 msgid "No photo with id:" msgstr "No photo with id:" -#: ajapaik/ajapaik/api.py:83 +#: ajapaik/ajapaik/api.py:85 msgid "Parameter photo_id must be an positive integer" msgstr "Parameter photo_id must be an positive integer" -#: ajapaik/ajapaik/api.py:85 +#: ajapaik/ajapaik/api.py:87 msgid "Please login with a different account, you are currently logged in with the same account that you are merging from" msgstr "Please login with a different account, you are currently logged in with the same account that you are merging from" -#: ajapaik/ajapaik/api.py:87 +#: ajapaik/ajapaik/api.py:89 msgid "Please login" msgstr "Please login" -#: ajapaik/ajapaik/api.py:88 +#: ajapaik/ajapaik/api.py:90 msgid "Rephoto upload settings have been saved" msgstr "Rephoto upload settings have been saved" -#: ajapaik/ajapaik/api.py:89 +#: ajapaik/ajapaik/api.py:91 msgid "Required parameter, token is missing" msgstr "Required parameter, token is missing" -#: ajapaik/ajapaik/api.py:90 +#: ajapaik/ajapaik/api.py:92 msgid "This transcription already exists, previous transcription was upvoted, thank you!" msgstr "This transcription already exists, previous transcription was upvoted, thank you!" -#: ajapaik/ajapaik/api.py:91 +#: ajapaik/ajapaik/api.py:93 msgid "Transcription added, thank you!" msgstr "Transcription added, thank you!" -#: ajapaik/ajapaik/api.py:92 +#: ajapaik/ajapaik/api.py:94 msgid "Transcription feedback added, thank you!" msgstr "Transcription feedback added, thank you!" -#: ajapaik/ajapaik/api.py:93 +#: ajapaik/ajapaik/api.py:95 msgid "User display name has been saved" msgstr "User display name has been saved" -#: ajapaik/ajapaik/api.py:94 +#: ajapaik/ajapaik/api.py:96 msgid "User settings have been saved" msgstr "User settings have been saved" -#: ajapaik/ajapaik/api.py:95 +#: ajapaik/ajapaik/api.py:97 msgid "You have already given feedback for this transcription" msgstr "You have already given feedback for this transcription" -#: ajapaik/ajapaik/api.py:96 +#: ajapaik/ajapaik/api.py:98 msgid "You have already submitted this transcription, thank you!" msgstr "You have already submitted this transcription, thank you!" -#: ajapaik/ajapaik/api.py:97 +#: ajapaik/ajapaik/api.py:99 msgid "Your transcription has been updated, thank you!" msgstr "Your transcription has been updated, thank you!" -#: ajapaik/ajapaik/api.py:990 ajapaik/ajapaik/api.py:1640 -#: ajapaik/ajapaik/api.py:1660 ajapaik/ajapaik/api.py:1676 -#: ajapaik/ajapaik/api.py:1694 ajapaik/ajapaik/api.py:1783 -#: ajapaik/ajapaik/api.py:1903 +#: ajapaik/ajapaik/api.py:1038 ajapaik/ajapaik/api.py:1688 +#: ajapaik/ajapaik/api.py:1708 ajapaik/ajapaik/api.py:1724 +#: ajapaik/ajapaik/api.py:1742 ajapaik/ajapaik/api.py:1831 +#: ajapaik/ajapaik/api.py:1951 msgid "Something went wrong" msgstr "Something went wrong" -#: ajapaik/ajapaik/api.py:1955 ajapaik/utils.py:156 +#: ajapaik/ajapaik/api.py:2003 ajapaik/utils.py:156 msgid "Your suggestion has been saved, but previous consensus remains" msgstr "Your suggestion has been saved, but previous consensus remains" #: ajapaik/ajapaik/autocomplete_views.py:324 +#: ajapaik/ajapaik/autocomplete_views.py:356 msgid "No album found" msgstr "No album found" @@ -119,449 +120,475 @@ msgid "Bounding box values must be numbers" msgstr "Bounding box values must be numbers" #: ajapaik/ajapaik/forms.py:18 +#, fuzzy +#| msgid "Bad Token" +msgid "Token" +msgstr "Bad Token" + +#: ajapaik/ajapaik/forms.py:19 +msgid "Route" +msgstr "" + +#: ajapaik/ajapaik/forms.py:20 +msgid "Provider" +msgstr "" + +#: ajapaik/ajapaik/forms.py:24 #: ajapaik/ajapaik/templates/socialaccount/connections_content.html:24 #: ajapaik/ajapaik/templates/user/_user_card.html:11 msgid "Email" msgstr "Email" -#: ajapaik/ajapaik/forms.py:19 +#: ajapaik/ajapaik/forms.py:25 msgid "First name" msgstr "First name" -#: ajapaik/ajapaik/forms.py:20 +#: ajapaik/ajapaik/forms.py:26 msgid "Last name" msgstr "Last name" -#: ajapaik/ajapaik/forms.py:21 +#: ajapaik/ajapaik/forms.py:27 #: ajapaik/ajapaik/templates/authentication/_login.html:41 msgid "Password" msgstr "Password" -#: ajapaik/ajapaik/forms.py:22 +#: ajapaik/ajapaik/forms.py:28 msgid "Password confirmation" msgstr "Password confirmation" -#: ajapaik/ajapaik/forms.py:106 ajapaik/ajapaik/forms.py:187 -#: ajapaik/ajapaik/forms.py:209 +#: ajapaik/ajapaik/forms.py:114 ajapaik/ajapaik/forms.py:195 +#: ajapaik/ajapaik/forms.py:217 msgid "Choose area" msgstr "Choose area" -#: ajapaik/ajapaik/forms.py:112 ajapaik/ajapaik/forms.py:186 -#: ajapaik/ajapaik/forms.py:200 ajapaik/ajapaik/forms.py:208 -#: ajapaik/ajapaik/forms.py:217 +#: ajapaik/ajapaik/forms.py:120 ajapaik/ajapaik/forms.py:194 +#: ajapaik/ajapaik/forms.py:208 ajapaik/ajapaik/forms.py:216 +#: ajapaik/ajapaik/forms.py:225 msgid "Choose album" msgstr "Choose album" -#: ajapaik/ajapaik/forms.py:204 ajapaik/ajapaik/forms.py:211 +#: ajapaik/ajapaik/forms.py:212 ajapaik/ajapaik/forms.py:219 msgid "Choose photo" msgstr "Choose photo" -#: ajapaik/ajapaik/forms.py:233 ajapaik/ajapaik/forms.py:252 +#: ajapaik/ajapaik/forms.py:258 msgid "Choose parent album" msgstr "Choose parent album" -#: ajapaik/ajapaik/forms.py:417 +#: ajapaik/ajapaik/forms.py:428 msgid "Picture file" msgstr "Picture file" -#: ajapaik/ajapaik/forms.py:418 ajapaik/ajapaik/forms.py:471 -#: ajapaik/ajapaik/models.py:181 ajapaik/ajapaik/models.py:376 -#: ajapaik/ajapaik/templates/curator/curator.html:82 +#: ajapaik/ajapaik/forms.py:429 ajapaik/ajapaik/forms.py:482 +#: ajapaik/ajapaik/models.py:260 ajapaik/ajapaik/models.py:566 +#: ajapaik/ajapaik/templates/curator/curator.html:89 #: ajapaik/ajapaik_face_recognition/forms.py:23 msgid "Description" msgstr "Description" -#: ajapaik/ajapaik/forms.py:419 +#: ajapaik/ajapaik/forms.py:430 msgid "I am the author" msgstr "I am the author" -#: ajapaik/ajapaik/forms.py:420 ajapaik/ajapaik/models.py:383 +#: ajapaik/ajapaik/forms.py:431 ajapaik/ajapaik/models.py:573 msgid "Author" msgstr "Author" -#: ajapaik/ajapaik/forms.py:421 +#: ajapaik/ajapaik/forms.py:432 msgid "Licence or status of copyright" msgstr "Licence or status of copyright" -#: ajapaik/ajapaik/forms.py:424 +#: ajapaik/ajapaik/forms.py:435 msgid "Accepted formats are .png or .jpg files" msgstr "Accepted formats are .png or .jpg files" -#: ajapaik/ajapaik/forms.py:425 +#: ajapaik/ajapaik/forms.py:436 msgid "Add a short description of the picture" msgstr "Add a short description of the picture" -#: ajapaik/ajapaik/forms.py:426 +#: ajapaik/ajapaik/forms.py:437 msgid "Author of the picture (photographer, painter)" msgstr "Author of the picture (photographer, painter)" -#: ajapaik/ajapaik/forms.py:428 -msgid "Please select a licence to let other people know if and how they can reuse the material you upload.\n\nIf you are the author, you can choose the licence (we recommend using open Creative Commons licences). If someone else created the work, you need to use the same licence and rights holder that it currently has.\n\nCurrently we are also accepting content with unclear copyright status, please choose ‘Copyright not evaluated’ then." +#: ajapaik/ajapaik/forms.py:439 +msgid "Please select a licence to let other people know if and how they can reuse the material you upload.\n\nIf you are the author, you can choose the licence (we recommend using open Creative Commons\n licences). If someone else created the work, you need to use the same licence and rights holder that it\n currently has.\n\nCurrently we are also accepting content with unclear copyright status,\n please choose ‘Copyright not evaluated’ then." msgstr "Please select a licence to let other people know if and how they can reuse the material you upload.\n\nIf you are the author, you can choose the licence (we recommend using open Creative Commons licences). If someone else created the work, you need to use the same licence and rights holder that it currently has.\n\nCurrently we are also accepting content with unclear copyright status, please choose ‘Copyright not evaluated’ then." -#: ajapaik/ajapaik/forms.py:436 +#: ajapaik/ajapaik/forms.py:447 msgid "Description of the picture" msgstr "Description of the picture" -#: ajapaik/ajapaik/forms.py:437 +#: ajapaik/ajapaik/forms.py:448 msgid "Author name" msgstr "Author name" -#: ajapaik/ajapaik/forms.py:443 +#: ajapaik/ajapaik/forms.py:454 msgid "Missing image" msgstr "Missing image" -#: ajapaik/ajapaik/forms.py:445 +#: ajapaik/ajapaik/forms.py:456 msgid "Missing description" msgstr "Missing description" -#: ajapaik/ajapaik/forms.py:447 +#: ajapaik/ajapaik/forms.py:458 msgid "Missing licence" msgstr "Missing licence" -#: ajapaik/ajapaik/forms.py:461 -#: ajapaik/ajapaik/templates/curator/curator.html:107 +#: ajapaik/ajapaik/forms.py:472 msgid "Parent album" msgstr "Parent album" -#: ajapaik/ajapaik/forms.py:464 +#: ajapaik/ajapaik/forms.py:475 +#: ajapaik/ajapaik/templates/curator/curator.html:144 msgid "Location" msgstr "Location" -#: ajapaik/ajapaik/forms.py:465 +#: ajapaik/ajapaik/forms.py:476 msgid "If this album is tied to a certain location, specify here" msgstr "If this album is tied to a certain location, specify here" -#: ajapaik/ajapaik/forms.py:468 +#: ajapaik/ajapaik/forms.py:479 msgid "Album type" msgstr "Album type" -#: ajapaik/ajapaik/forms.py:469 +#: ajapaik/ajapaik/forms.py:480 msgid "Anything else" msgstr "Anything else" -#: ajapaik/ajapaik/forms.py:469 +#: ajapaik/ajapaik/forms.py:480 msgid "Person" msgstr "Person" -#: ajapaik/ajapaik/forms.py:470 ajapaik/ajapaik/models.py:179 -#: ajapaik/ajapaik/templates/curator/curator.html:73 +#: ajapaik/ajapaik/forms.py:481 ajapaik/ajapaik/models.py:258 +#: ajapaik/ajapaik/templates/curator/curator.html:79 #: ajapaik/ajapaik/templates/geotaggers/_geotaggers_modal_content.html:17 #: ajapaik/ajapaik/templates/socialaccount/connections_content.html:26 #: ajapaik/ajapaik/templates/user/_user_card.html:11 msgid "Name" msgstr "Name" -#: ajapaik/ajapaik/forms.py:472 ajapaik/ajapaik/models.py:185 +#: ajapaik/ajapaik/forms.py:483 ajapaik/ajapaik/models.py:264 msgid "Is public" msgstr "Is public" -#: ajapaik/ajapaik/forms.py:473 ajapaik/ajapaik/models.py:186 +#: ajapaik/ajapaik/forms.py:484 ajapaik/ajapaik/models.py:265 msgid "Is open" msgstr "Is open" -#: ajapaik/ajapaik/forms.py:486 +#: ajapaik/ajapaik/forms.py:497 msgid "My preferred language is" msgstr "My preferred language is" -#: ajapaik/ajapaik/forms.py:487 +#: ajapaik/ajapaik/forms.py:498 msgid "I wish to receive the newsletter" msgstr "I wish to receive the newsletter" -#: ajapaik/ajapaik/forms.py:491 ajapaik/ajapaik/forms.py:510 +#: ajapaik/ajapaik/forms.py:502 ajapaik/ajapaik/forms.py:521 msgid "Yes" msgstr "Yes" -#: ajapaik/ajapaik/forms.py:491 ajapaik/ajapaik/forms.py:510 +#: ajapaik/ajapaik/forms.py:502 ajapaik/ajapaik/forms.py:521 msgid "No" msgstr "No" -#: ajapaik/ajapaik/forms.py:497 +#: ajapaik/ajapaik/forms.py:508 msgid "Please specify your prefered language" msgstr "Please specify your prefered language" -#: ajapaik/ajapaik/forms.py:499 +#: ajapaik/ajapaik/forms.py:510 msgid "Please specify whether you would like to receive the newsletter" msgstr "Please specify whether you would like to receive the newsletter" -#: ajapaik/ajapaik/forms.py:507 +#: ajapaik/ajapaik/forms.py:518 msgid "I wish to to upload my rephotos to Wikimedia Commons" msgstr "I wish to to upload my rephotos to Wikimedia Commons" -#: ajapaik/ajapaik/forms.py:517 +#: ajapaik/ajapaik/forms.py:528 msgid "Please specify whether you would like your rephotos to be uploaded to Wikimedia Commons as well" msgstr "Please specify whether you would like your rephotos to be uploaded to Wikimedia Commons as well" -#: ajapaik/ajapaik/forms.py:526 +#: ajapaik/ajapaik/forms.py:537 msgid "Please specify what would you like your display name to be" msgstr "Please specify what would you like your display name to be" -#: ajapaik/ajapaik/forms.py:545 +#: ajapaik/ajapaik/forms.py:556 msgid "Email address" msgstr "Email address" -#: ajapaik/ajapaik/forms.py:550 +#: ajapaik/ajapaik/forms.py:561 msgid "Comment box supports Markdown\n\nParagraphs\nAdd two new lines to start a new paragraph.\n\nBold\n**Geotagging** is the first task on Ajapaik.\n\nItalic\nNext come *rephotography* and *dating*.\n\nLinks\nJoin the discussion on [Ajapaiklejad FB group](https://www.facebook.com/groups/ajapaiklejad).\n\nImages\n![Ajapaik is gift for EV100](https://ajapaik.ee/static/images/ev100.png)" msgstr "Comment box supports Markdown\n\nParagraphs\nAdd two new lines to start a new paragraph.\n\nBold\n**Geotagging** is the first task on Ajapaik.\n\nItalic\nNext come *rephotography* and *dating*.\n\nLinks\nJoin the discussion on [Ajapaiklejad FB group](https://www.facebook.com/groups/ajapaiklejad).\n\nImages\n![Ajapaik is gift for EV100](https://ajapaik.ee/static/images/ev100.png)" -#: ajapaik/ajapaik/forms.py:585 +#: ajapaik/ajapaik/forms.py:596 msgid "Nothing to change." msgstr "Nothing to change." -#: ajapaik/ajapaik/models.py:175 ajapaik/ajapaik_face_recognition/forms.py:13 +#: ajapaik/ajapaik/models.py:254 ajapaik/ajapaik_face_recognition/forms.py:13 #: ajapaik/ajapaik_face_recognition/models.py:23 -#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:50 +#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:51 msgid "Male" msgstr "Male" -#: ajapaik/ajapaik/models.py:176 ajapaik/ajapaik_face_recognition/forms.py:13 +#: ajapaik/ajapaik/models.py:255 ajapaik/ajapaik_face_recognition/forms.py:13 #: ajapaik/ajapaik_face_recognition/models.py:22 -#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:53 +#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:54 msgid "Female" msgstr "Female" -#: ajapaik/ajapaik/models.py:202 ajapaik/ajapaik_face_recognition/forms.py:21 +#: ajapaik/ajapaik/models.py:281 ajapaik/ajapaik_face_recognition/forms.py:21 msgid "Gender" msgstr "Gender" -#: ajapaik/ajapaik/models.py:204 +#: ajapaik/ajapaik/models.py:283 msgid "Wikidata identifier" msgstr "Wikidata identifier" -#: ajapaik/ajapaik/models.py:211 +#: ajapaik/ajapaik/models.py:290 msgid "Name original language" msgstr "Name original language" -#: ajapaik/ajapaik/models.py:361 +#: ajapaik/ajapaik/models.py:551 msgid "Image" msgstr "Image" -#: ajapaik/ajapaik/models.py:375 ajapaik/ajapaik/models.py:1901 +#: ajapaik/ajapaik/models.py:565 ajapaik/ajapaik/models.py:2113 msgid "Title" msgstr "Title" -#: ajapaik/ajapaik/models.py:377 +#: ajapaik/ajapaik/models.py:567 msgid "MUIS title" msgstr "MUIS title" -#: ajapaik/ajapaik/models.py:378 +#: ajapaik/ajapaik/models.py:568 msgid "MUIS comment" msgstr "MUIS comment" -#: ajapaik/ajapaik/models.py:379 +#: ajapaik/ajapaik/models.py:569 msgid "MUIS event description set note" msgstr "MUIS event description set note" -#: ajapaik/ajapaik/models.py:380 +#: ajapaik/ajapaik/models.py:570 msgid "MUIS text on object" msgstr "MUIS text on object" -#: ajapaik/ajapaik/models.py:381 +#: ajapaik/ajapaik/models.py:571 msgid "MUIS legends and descriptions" msgstr "MUIS legends and descriptions" -#: ajapaik/ajapaik/models.py:458 ajapaik/ajapaik/models.py:1853 +#: ajapaik/ajapaik/models.py:649 ajapaik/ajapaik/models.py:2065 msgid "Interior" msgstr "Interior" -#: ajapaik/ajapaik/models.py:459 ajapaik/ajapaik/models.py:1854 +#: ajapaik/ajapaik/models.py:650 ajapaik/ajapaik/models.py:2066 msgid "Exterior" msgstr "Exterior" -#: ajapaik/ajapaik/models.py:461 ajapaik/ajapaik/models.py:1856 +#: ajapaik/ajapaik/models.py:652 ajapaik/ajapaik/models.py:2068 msgid "Scene" msgstr "Scene" -#: ajapaik/ajapaik/models.py:464 ajapaik/ajapaik/models.py:1863 +#: ajapaik/ajapaik/models.py:655 ajapaik/ajapaik/models.py:2075 msgid "Ground" msgstr "Ground" -#: ajapaik/ajapaik/models.py:465 ajapaik/ajapaik/models.py:1864 +#: ajapaik/ajapaik/models.py:656 ajapaik/ajapaik/models.py:2076 msgid "Raised" msgstr "Raised" -#: ajapaik/ajapaik/models.py:466 ajapaik/ajapaik/models.py:1865 +#: ajapaik/ajapaik/models.py:657 ajapaik/ajapaik/models.py:2077 msgid "Aerial" msgstr "Aerial" -#: ajapaik/ajapaik/models.py:468 ajapaik/ajapaik/models.py:1867 +#: ajapaik/ajapaik/models.py:659 ajapaik/ajapaik/models.py:2079 msgid "Viewpoint elevation" msgstr "Viewpoint elevation" -#: ajapaik/ajapaik/models.py:470 +#: ajapaik/ajapaik/models.py:661 msgid "Description original language" msgstr "Description original language" -#: ajapaik/ajapaik/models.py:1128 ajapaik/ajapaik/models.py:1219 +#: ajapaik/ajapaik/models.py:662 +msgid "Hide image from being accessed outside of Admin" +msgstr "Hide image from being accessed outside of Admin" + +#: ajapaik/ajapaik/models.py:1339 ajapaik/ajapaik/models.py:1430 msgid "Different" msgstr "Different" -#: ajapaik/ajapaik/models.py:1129 ajapaik/ajapaik/models.py:1220 +#: ajapaik/ajapaik/models.py:1340 ajapaik/ajapaik/models.py:1431 msgid "Similar" msgstr "Similar" -#: ajapaik/ajapaik/models.py:1130 ajapaik/ajapaik/models.py:1221 +#: ajapaik/ajapaik/models.py:1341 ajapaik/ajapaik/models.py:1432 msgid "Duplicate" msgstr "Duplicate" -#: ajapaik/ajapaik/models.py:1284 +#: ajapaik/ajapaik/models.py:1495 msgid "Geotag" msgstr "Geotag" -#: ajapaik/ajapaik/models.py:1285 ajapaik/ajapaik/models.py:1368 +#: ajapaik/ajapaik/models.py:1496 ajapaik/ajapaik/models.py:1579 #: ajapaik/ajapaik/templates/_comments.html:11 msgid "Rephoto" msgstr "Rephoto" -#: ajapaik/ajapaik/models.py:1286 +#: ajapaik/ajapaik/models.py:1497 msgid "Photo upload" msgstr "Photo upload" -#: ajapaik/ajapaik/models.py:1287 +#: ajapaik/ajapaik/models.py:1498 msgid "Photo curation" msgstr "Photo curation" -#: ajapaik/ajapaik/models.py:1288 +#: ajapaik/ajapaik/models.py:1499 msgid "Photo re-curation" msgstr "Photo re-curation" -#: ajapaik/ajapaik/models.py:1289 +#: ajapaik/ajapaik/models.py:1500 msgid "Dating" msgstr "Dating" -#: ajapaik/ajapaik/models.py:1290 +#: ajapaik/ajapaik/models.py:1501 msgid "Dating confirmation" msgstr "Dating confirmation" -#: ajapaik/ajapaik/models.py:1291 +#: ajapaik/ajapaik/models.py:1502 msgid "Film still" msgstr "Film still" -#: ajapaik/ajapaik/models.py:1292 +#: ajapaik/ajapaik/models.py:1503 msgid "Annotation" msgstr "Annotation" -#: ajapaik/ajapaik/models.py:1293 +#: ajapaik/ajapaik/models.py:1504 msgid "Confirm subject" msgstr "Confirm subject" -#: ajapaik/ajapaik/models.py:1294 +#: ajapaik/ajapaik/models.py:1505 msgid "Confirm Image similarity" msgstr "Confirm Image similarity" -#: ajapaik/ajapaik/models.py:1295 ajapaik/ajapaik/models.py:1296 +#: ajapaik/ajapaik/models.py:1506 ajapaik/ajapaik/models.py:1507 msgid "Suggestion subject age" msgstr "Suggestion subject age" -#: ajapaik/ajapaik/models.py:1297 ajapaik/ajapaik/templates/_toolbox.html:66 +#: ajapaik/ajapaik/models.py:1508 ajapaik/ajapaik/templates/_toolbox.html:92 msgid "Transcribe" msgstr "Transcribe" -#: ajapaik/ajapaik/models.py:1298 +#: ajapaik/ajapaik/models.py:1509 msgid "Categorize scene" msgstr "Categorize scene" -#: ajapaik/ajapaik/models.py:1299 +#: ajapaik/ajapaik/models.py:1510 msgid "Add viewpoint elevation" msgstr "Add viewpoint elevation" -#: ajapaik/ajapaik/models.py:1300 +#: ajapaik/ajapaik/models.py:1511 msgid "Flip photo" msgstr "Flip photo" -#: ajapaik/ajapaik/models.py:1301 +#: ajapaik/ajapaik/models.py:1512 msgid "Invert photo" msgstr "Invert photo" -#: ajapaik/ajapaik/models.py:1302 +#: ajapaik/ajapaik/models.py:1513 msgid "Rotate photo" msgstr "Rotate photo" -#: ajapaik/ajapaik/models.py:1353 +#: ajapaik/ajapaik/models.py:1564 msgid "Map" msgstr "Map" -#: ajapaik/ajapaik/models.py:1354 +#: ajapaik/ajapaik/models.py:1565 msgid "EXIF" msgstr "EXIF" -#: ajapaik/ajapaik/models.py:1355 +#: ajapaik/ajapaik/models.py:1566 msgid "GPS" msgstr "GPS" -#: ajapaik/ajapaik/models.py:1356 +#: ajapaik/ajapaik/models.py:1567 msgid "Confirmation" msgstr "Confirmation" -#: ajapaik/ajapaik/models.py:1357 +#: ajapaik/ajapaik/models.py:1568 msgid "StreetView" msgstr "StreetView" -#: ajapaik/ajapaik/models.py:1358 +#: ajapaik/ajapaik/models.py:1569 msgid "Source geotag" msgstr "Source geotag" -#: ajapaik/ajapaik/models.py:1359 +#: ajapaik/ajapaik/models.py:1570 msgid "Android app" msgstr "Android app" -#: ajapaik/ajapaik/models.py:1363 +#: ajapaik/ajapaik/models.py:1574 msgid "Game" msgstr "Game" -#: ajapaik/ajapaik/models.py:1364 +#: ajapaik/ajapaik/models.py:1575 msgid "Map view" msgstr "Map view" -#: ajapaik/ajapaik/models.py:1365 +#: ajapaik/ajapaik/models.py:1576 msgid "Gallery" msgstr "Gallery" -#: ajapaik/ajapaik/models.py:1366 +#: ajapaik/ajapaik/models.py:1577 msgid "Permalink" msgstr "Permalink" -#: ajapaik/ajapaik/models.py:1367 +#: ajapaik/ajapaik/models.py:1578 msgid "Source" msgstr "Source" -#: ajapaik/ajapaik/models.py:1372 +#: ajapaik/ajapaik/models.py:1583 msgid "Google map" msgstr "Google map" -#: ajapaik/ajapaik/models.py:1373 +#: ajapaik/ajapaik/models.py:1584 msgid "Google satellite" msgstr "Google satellite" -#: ajapaik/ajapaik/models.py:1374 +#: ajapaik/ajapaik/models.py:1585 msgid "OpenStreetMap" msgstr "OpenStreetMap" -#: ajapaik/ajapaik/models.py:1375 +#: ajapaik/ajapaik/models.py:1586 msgid "Juks" msgstr "Juks" -#: ajapaik/ajapaik/models.py:1376 +#: ajapaik/ajapaik/models.py:1587 msgid "No map" msgstr "No map" -#: ajapaik/ajapaik/models.py:1518 ajapaik/ajapaik/models.py:1520 +#: ajapaik/ajapaik/models.py:1729 ajapaik/ajapaik/models.py:1731 #: ajapaik/ajapaik/templates/comments/list.html:17 msgid "Anonymous user" msgstr "Anonymous user" -#: ajapaik/ajapaik/models.py:1711 +#: ajapaik/ajapaik/models.py:1921 msgid "Day" msgstr "Day" -#: ajapaik/ajapaik/models.py:1712 +#: ajapaik/ajapaik/models.py:1922 msgid "Month" msgstr "Month" -#: ajapaik/ajapaik/models.py:1713 +#: ajapaik/ajapaik/models.py:1923 msgid "Year" msgstr "Year" +#: ajapaik/ajapaik/models.py:1924 +msgid "Decade" +msgstr "Decade" + +#: ajapaik/ajapaik/models.py:1925 +msgid "Century" +msgstr "Century" + #: ajapaik/ajapaik/templates/404.html:5 ajapaik/ajapaik/templates/404.html:11 #: ajapaik/ajapaik/templates/user/settings/user_settings.html:5 #: ajapaik/ajapaik/templates/user/user.html:5 @@ -583,68 +610,69 @@ msgstr "Tag a person" msgid "Original photo" msgstr "Original photo" -#: ajapaik/ajapaik/templates/_mode_select.html:8 +#: ajapaik/ajapaik/templates/_mode_select.html:9 msgid "This album contains a film" msgstr "This album contains a film" -#: ajapaik/ajapaik/templates/_mode_select.html:10 +#: ajapaik/ajapaik/templates/_mode_select.html:11 msgid "This is a person album" msgstr "This is a person album" -#: ajapaik/ajapaik/templates/_mode_select.html:12 +#: ajapaik/ajapaik/templates/_mode_select.html:14 msgid "This is a collection album" msgstr "This is a collection album" -#: ajapaik/ajapaik/templates/_mode_select.html:19 -#: ajapaik/ajapaik/templates/_mode_select.html:71 +#: ajapaik/ajapaik/templates/_mode_select.html:21 +#: ajapaik/ajapaik/templates/_mode_select.html:77 msgid "Click to choose" msgstr "Click to choose" -#: ajapaik/ajapaik/templates/_mode_select.html:23 +#: ajapaik/ajapaik/templates/_mode_select.html:25 msgid "Album details" msgstr "Album details" -#: ajapaik/ajapaik/templates/_mode_select.html:26 -#: ajapaik/ajapaik/templates/_mode_select.html:75 +#: ajapaik/ajapaik/templates/_mode_select.html:28 +#: ajapaik/ajapaik/templates/_mode_select.html:82 msgid "Show albums" msgstr "Show albums" -#: ajapaik/ajapaik/templates/_mode_select.html:28 -#: ajapaik/ajapaik/templates/_mode_select.html:77 +#: ajapaik/ajapaik/templates/_mode_select.html:30 +#: ajapaik/ajapaik/templates/_mode_select.html:84 +#: ajapaik/ajapaik/templates/album/_album_creation_modal.html:28 msgid "Albums" msgstr "Albums" -#: ajapaik/ajapaik/templates/_mode_select.html:31 -#: ajapaik/ajapaik/templates/_mode_select.html:79 +#: ajapaik/ajapaik/templates/_mode_select.html:33 +#: ajapaik/ajapaik/templates/_mode_select.html:87 msgid "Show pictures" msgstr "Show pictures" -#: ajapaik/ajapaik/templates/_mode_select.html:33 -#: ajapaik/ajapaik/templates/_mode_select.html:81 +#: ajapaik/ajapaik/templates/_mode_select.html:35 +#: ajapaik/ajapaik/templates/_mode_select.html:89 msgid "All pictures" msgstr "All pictures" -#: ajapaik/ajapaik/templates/_mode_select.html:36 -#: ajapaik/ajapaik/templates/_mode_select.html:83 +#: ajapaik/ajapaik/templates/_mode_select.html:39 +#: ajapaik/ajapaik/templates/_mode_select.html:93 msgid "Show my favorites" msgstr "Show my favorites" -#: ajapaik/ajapaik/templates/_mode_select.html:38 -#: ajapaik/ajapaik/templates/_mode_select.html:85 +#: ajapaik/ajapaik/templates/_mode_select.html:41 +#: ajapaik/ajapaik/templates/_mode_select.html:95 msgid "My favorites" msgstr "My favorites" -#: ajapaik/ajapaik/templates/_mode_select.html:41 -#: ajapaik/ajapaik/templates/_mode_select.html:87 +#: ajapaik/ajapaik/templates/_mode_select.html:45 +#: ajapaik/ajapaik/templates/_mode_select.html:99 msgid "Show rephotographed by me" msgstr "Show rephotographed by me" -#: ajapaik/ajapaik/templates/_mode_select.html:43 -#: ajapaik/ajapaik/templates/_mode_select.html:89 +#: ajapaik/ajapaik/templates/_mode_select.html:47 +#: ajapaik/ajapaik/templates/_mode_select.html:101 msgid "My rephotos" msgstr "My rephotos" -#: ajapaik/ajapaik/templates/_mode_select.html:50 +#: ajapaik/ajapaik/templates/_mode_select.html:54 msgid "Remove album filter" msgstr "Remove album filter" @@ -660,71 +688,72 @@ msgstr "Indicate whether the content on pictures is overlapping or not. In the c msgid "The decision can also be made on keyboard (1, 2, 3)." msgstr "The decision can also be made on keyboard (1, 2, 3)." -#: ajapaik/ajapaik/templates/_toolbox.html:8 -#: ajapaik/ajapaik/templates/common/game.html:54 -#: ajapaik/ajapaik/templates/photo/photoview.html:61 +#: ajapaik/ajapaik/templates/_toolbox.html:10 +#: ajapaik/ajapaik/templates/common/game.html:55 +#: ajapaik/ajapaik/templates/photo/photoview.html:62 msgid "Pick the shooting location!" msgstr "Pick the shooting location!" -#: ajapaik/ajapaik/templates/_toolbox.html:12 +#: ajapaik/ajapaik/templates/_toolbox.html:14 msgid "Add a geotag" msgstr "Add a geotag" -#: ajapaik/ajapaik/templates/_toolbox.html:16 +#: ajapaik/ajapaik/templates/_toolbox.html:18 msgid "Date this image" msgstr "Date this image" -#: ajapaik/ajapaik/templates/_toolbox.html:20 +#: ajapaik/ajapaik/templates/_toolbox.html:22 msgid "Date" msgstr "Date" -#: ajapaik/ajapaik/templates/_toolbox.html:23 +#: ajapaik/ajapaik/templates/_toolbox.html:25 msgid "Add rephoto" msgstr "Add rephoto" -#: ajapaik/ajapaik/templates/_toolbox.html:26 +#: ajapaik/ajapaik/templates/_toolbox.html:28 msgid "Add a rephoto" msgstr "Add a rephoto" -#: ajapaik/ajapaik/templates/_toolbox.html:30 +#: ajapaik/ajapaik/templates/_toolbox.html:33 msgid "Tag a new face/object - clicking this button will enable you to draw an object/face rectangle on the main image" msgstr "Tag a new face/object - clicking this button will enable you to draw an object/face rectangle on the main image" -#: ajapaik/ajapaik/templates/_toolbox.html:34 +#: ajapaik/ajapaik/templates/_toolbox.html:37 msgid "Annotate" msgstr "Annotate" -#: ajapaik/ajapaik/templates/_toolbox.html:37 -#: ajapaik/ajapaik/templates/_toolbox.html:52 +#: ajapaik/ajapaik/templates/_toolbox.html:40 +#: ajapaik/ajapaik/templates/_toolbox.html:76 #: ajapaik/ajapaik/templates/info/_info_modal_content.html:83 msgid "Share" msgstr "Share" -#: ajapaik/ajapaik/templates/_toolbox.html:54 +#: ajapaik/ajapaik/templates/_toolbox.html:79 msgid "Add a category - clicking this button will enable you to categorize this picture to various categories such as whether this picture depicts indoors or outdoors" msgstr "Add a category - clicking this button will enable you to categorize this picture to various categories such as whether this picture depicts indoors or outdoors" -#: ajapaik/ajapaik/templates/_toolbox.html:58 +#: ajapaik/ajapaik/templates/_toolbox.html:84 msgid "Categorize" msgstr "Categorize" -#: ajapaik/ajapaik/templates/_toolbox.html:62 +#: ajapaik/ajapaik/templates/_toolbox.html:88 msgid "Transcribe this image" msgstr "Transcribe this image" -#: ajapaik/ajapaik/templates/_toolbox.html:72 +#: ajapaik/ajapaik/templates/_toolbox.html:99 msgid "Edit picture" msgstr "Edit picture" -#: ajapaik/ajapaik/templates/_toolbox.html:79 +#: ajapaik/ajapaik/templates/_toolbox.html:106 msgid "Show annotations" msgstr "Show annotations" -#: ajapaik/ajapaik/templates/_toolbox.html:86 +#: ajapaik/ajapaik/templates/_toolbox.html:111 msgid "IIIF" msgstr "" -#: ajapaik/ajapaik/templates/_toolbox.html:95 +#: ajapaik/ajapaik/templates/_toolbox.html:120 +#: ajapaik/ajapaik/templates/photo/_rephoto_description_container.html:44 msgid "Admin" msgstr "" @@ -745,7 +774,7 @@ msgstr "User settings" #: ajapaik/ajapaik/templates/account/logout.html:5 #: ajapaik/ajapaik/templates/account/logout.html:8 #: ajapaik/ajapaik/templates/account/logout.html:17 -#: ajapaik/ajapaik/templates/core/_header.html:110 +#: ajapaik/ajapaik/templates/core/_header.html:105 #: ajapaik/ajapaik/templates/leaderboard/_full_leaderboard_modal.html:20 #: ajapaik/ajapaik/templates/rephoto_upload/_rephoto_upload_modal_content.html:12 #: ajapaik/ajapaik/templates/user/user.html:43 @@ -776,7 +805,7 @@ msgstr "Menu" #: ajapaik/ajapaik/templates/account/email.html:5 #: ajapaik/ajapaik/templates/account/email_content.html:3 -#: ajapaik/ajapaik/views.py:3483 +#: ajapaik/ajapaik/views.py:3714 msgid "E-mail addresses" msgstr "E-mail addresses" @@ -803,45 +832,45 @@ msgstr "This e-mail confirmation link expired or is invalid. Please %(total_photo_count)s historic pictures, out of which\n" -" %(total_photos_tagged)s pictures have been " -"put on the map by\n" -" %(contributing_users)s users and " -"%(rephoto_count)s rephotographs for\n" -" %(rephotographed_photo_count)s pictures made " -"by %(rephotographing_users)s\n" -" users." +msgid "Ajapaik has %(total_photo_count)s historic pictures, out of which\n %(total_photos_tagged)s pictures have been put on the map by\n %(contributing_users)s users and %(rephoto_count)s rephotographs for\n %(rephotographed_photo_count)s pictures made by %(rephotographing_users)s\n users." msgstr "Ajapaik has %(total_photo_count)s historic pictures, out of which %(total_photos_tagged)s pictures have been put on the map by %(contributing_users)s users and %(rephoto_count)s rephotographs for %(rephotographed_photo_count)s pictures made by %(rephotographing_users)s users." -#: ajapaik/ajapaik/templates/info/_general_info_modal_content.html:34 +#: ajapaik/ajapaik/templates/info/_general_info_modal_content.html:38 #, python-format -msgid "" -"There are %(person_annotation_count)s faces detected on the pictures, " -"a\n" -" person has been identified in " -"%(person_annotation_count_with_person_album)s cases, age\n" -" or gender is marked for " -"%(person_annotation_count_with_subject_data)s\n" -" faces." +msgid "There are %(person_annotation_count)s faces detected on the pictures, a\n person has been identified in %(person_annotation_count_with_person_album)s cases, age\n or gender is marked for %(person_annotation_count_with_subject_data)s\n faces." msgstr "There are %(person_annotation_count)s faces detected on the pictures, a person has been identified in %(person_annotation_count_with_person_album)s cases, age or gender is marked for %(person_annotation_count_with_subject_data)s faces." -#: ajapaik/ajapaik/templates/info/_general_info_modal_content.html:38 +#: ajapaik/ajapaik/templates/info/_general_info_modal_content.html:45 msgid "Overview of your own contributions can be found on your user profile page." msgstr "Overview of your own contributions can be found on your user profile page." -#: ajapaik/ajapaik/templates/info/_general_info_modal_content.html:41 +#: ajapaik/ajapaik/templates/info/_general_info_modal_content.html:48 msgid "General statistics refresh every 10 minutes." msgstr "General statistics refresh every 10 minutes." @@ -1901,6 +1906,22 @@ msgid_plural "Album has %(counter)s historic pictures," msgstr[0] "Album has %(counter)s historic picture," msgstr[1] "Album has %(counter)s historic pictures," +#: ajapaik/ajapaik/templates/core/base_bootstrap.html:102 +#: ajapaik/ajapaik/templates/info/_info_modal_content.html:28 +#, python-format +msgid "%(counter)s user has put" +msgid_plural "%(counter)s users have put" +msgstr[0] "%(counter)s user has put" +msgstr[1] "%(counter)s users have put" + +#: ajapaik/ajapaik/templates/core/base_bootstrap.html:107 +#: ajapaik/ajapaik/templates/info/_info_modal_content.html:32 +#, python-format +msgid "%(counter)s picture on the map." +msgid_plural "%(counter)s pictures on the map." +msgstr[0] "%(counter)s picture on the map." +msgstr[1] "%(counter)s pictures on the map." + #: ajapaik/ajapaik/templates/info/_info_modal_content.html:37 msgid "You haven't made any location suggestions for pictures in this album." msgstr "You haven't made any location suggestions for pictures in this album." @@ -2015,38 +2036,38 @@ msgid "Approximate address" msgstr "Approximate address" #: ajapaik/ajapaik/templates/photo/_photo_modal.html:46 -#: ajapaik/ajapaik/templates/photo/photoview.html:68 +#: ajapaik/ajapaik/templates/photo/photoview.html:69 msgid "See the other side of photo" msgstr "See the other side of photo" #: ajapaik/ajapaik/templates/photo/_photo_modal.html:81 #: ajapaik/ajapaik/templates/photo/_photo_modal.html:82 -#: ajapaik/ajapaik/templates/photo/photoview.html:136 #: ajapaik/ajapaik/templates/photo/photoview.html:137 +#: ajapaik/ajapaik/templates/photo/photoview.html:138 msgid "similar photo" msgstr "similar photo" #: ajapaik/ajapaik/templates/photo/_photo_modal.html:84 #: ajapaik/ajapaik/templates/photo/_photo_modal.html:85 -#: ajapaik/ajapaik/templates/photo/photoview.html:139 #: ajapaik/ajapaik/templates/photo/photoview.html:140 +#: ajapaik/ajapaik/templates/photo/photoview.html:141 msgid "duplicate photo" msgstr "duplicate photo" -#: ajapaik/ajapaik/templates/photo/_rephoto_description_container.html:38 +#: ajapaik/ajapaik/templates/photo/_rephoto_description_container.html:37 msgid "Date taken" msgstr "Date taken" #: ajapaik/ajapaik/templates/photo/photoview.html:29 -#: ajapaik/ajapaik/templates/photo/photoview.html:31 -#: ajapaik/ajapaik/templates/photo/photoview.html:111 -#: ajapaik/ajapaik/templates/photo/photoview.html:164 +#: ajapaik/ajapaik/templates/photo/photoview.html:32 +#: ajapaik/ajapaik/templates/photo/photoview.html:112 #: ajapaik/ajapaik/templates/photo/photoview.html:165 +#: ajapaik/ajapaik/templates/photo/photoview.html:166 msgid "rephoto" msgstr "rephoto" #: ajapaik/ajapaik/templates/photo/selection/photo_selection.html:22 -#: ajapaik/ajapaik/templates/photo/selection/photo_selection.html:109 +#: ajapaik/ajapaik/templates/photo/selection/photo_selection.html:110 msgid "Mark as similar or duplicates" msgstr "Mark as similar or duplicates" @@ -2062,11 +2083,11 @@ msgstr "Flip, rotate and invert picture(s)" msgid "You can re-order photos by dragging and dropping" msgstr "You can re-order photos by dragging and dropping" -#: ajapaik/ajapaik/templates/photo/selection/photo_selection.html:108 +#: ajapaik/ajapaik/templates/photo/selection/photo_selection.html:109 msgid "Images have overlapping content" msgstr "Images have overlapping content" -#: ajapaik/ajapaik/templates/photo/selection/photo_selection.html:108 +#: ajapaik/ajapaik/templates/photo/selection/photo_selection.html:109 msgid "All images are of the same shot" msgstr "All images are of the same shot" @@ -2087,8 +2108,8 @@ msgid "CSV Import" msgstr "CSV Import" #: ajapaik/ajapaik/templates/rephoto_upload/_rephoto_upload_modal_content.html:21 -#: ajapaik/ajapaik/templates/rephoto_upload/_rephoto_upload_modal_content.html:99 -#: ajapaik/ajapaik/templates/user_upload/user_upload.html:51 +#: ajapaik/ajapaik/templates/rephoto_upload/_rephoto_upload_modal_content.html:98 +#: ajapaik/ajapaik/templates/user_upload/user_upload.html:53 msgid "Upload" msgstr "Upload" @@ -2112,7 +2133,7 @@ msgstr "Abort" msgid "Select new file..." msgstr "Select new file..." -#: ajapaik/ajapaik/templates/rephoto_upload/_rephoto_upload_modal_content.html:107 +#: ajapaik/ajapaik/templates/rephoto_upload/_rephoto_upload_modal_content.html:106 msgid "File upload failed." msgstr "File upload failed." @@ -2136,7 +2157,7 @@ msgstr "An error occurred while attempting to login via your social network acco #: ajapaik/ajapaik/templates/socialaccount/connections.html:5 #: ajapaik/ajapaik/templates/socialaccount/connections_content.html:3 -#: ajapaik/ajapaik/views.py:3486 +#: ajapaik/ajapaik/views.py:3717 msgid "Account Connections" msgstr "Account Connections" @@ -2421,11 +2442,11 @@ msgstr "Add picture to some album(s)" msgid "You need to add the picture to atleast one album" msgstr "You need to add the picture to atleast one album" -#: ajapaik/ajapaik/templates/user_upload/user_upload.html:46 +#: ajapaik/ajapaik/templates/user_upload/user_upload.html:48 msgid "Please add the picture to some existing album(s) or create first a new album and then add the picture to it" msgstr "Please add the picture to some existing album(s) or create first a new album and then add the picture to it" -#: ajapaik/ajapaik/templates/user_upload/user_upload.html:54 +#: ajapaik/ajapaik/templates/user_upload/user_upload.html:56 msgid "Upload and mark on map" msgstr "Upload and mark on map" @@ -2438,134 +2459,134 @@ msgstr "Add" msgid "You're anonymous. You can now log in with your e-mail." msgstr "You're anonymous. You can now log in with your e-mail." -#: ajapaik/ajapaik/views.py:469 +#: ajapaik/ajapaik/views.py:526 msgid "Non-authenticated user" msgstr "Non-authenticated user" -#: ajapaik/ajapaik/views.py:607 +#: ajapaik/ajapaik/views.py:664 msgid "Geotagging game" msgstr "Geotagging game" -#: ajapaik/ajapaik/views.py:675 +#: ajapaik/ajapaik/views.py:731 #, python-format msgid "%(name)s - rephotos" msgstr "%(name)s - rephotos" -#: ajapaik/ajapaik/views.py:1229 +#: ajapaik/ajapaik/views.py:1299 msgid "Cannot upload to these albums" msgstr "Cannot upload to these albums" -#: ajapaik/ajapaik/views.py:1263 +#: ajapaik/ajapaik/views.py:1333 msgid "Recuration successful" msgstr "Recuration successful" -#: ajapaik/ajapaik/views.py:1265 +#: ajapaik/ajapaik/views.py:1335 msgid "Faulty data submitted" msgstr "Faulty data submitted" -#: ajapaik/ajapaik/views.py:1609 +#: ajapaik/ajapaik/views.py:1712 msgid "Browse photos on map" msgstr "Browse photos on map" -#: ajapaik/ajapaik/views.py:1751 +#: ajapaik/ajapaik/views.py:1854 msgid "Your contribution didn't change the estimated location for the photo, not yet anyway." msgstr "Your contribution didn't change the estimated location for the photo, not yet anyway." -#: ajapaik/ajapaik/views.py:1753 +#: ajapaik/ajapaik/views.py:1856 msgid "The photo has been mapped to a new location thanks to you." msgstr "The photo has been mapped to a new location thanks to you." -#: ajapaik/ajapaik/views.py:1755 +#: ajapaik/ajapaik/views.py:1858 msgid "Your suggestion was first." msgstr "Your suggestion was first." -#: ajapaik/ajapaik/views.py:2028 +#: ajapaik/ajapaik/views.py:2131 msgid "Search for old photos, add them to Ajapaik, determine their locations and share the resulting album!" msgstr "Search for old photos, add them to Ajapaik, determine their locations and share the resulting album!" -#: ajapaik/ajapaik/views.py:2379 +#: ajapaik/ajapaik/views.py:2478 msgid "OK" msgstr "OK" -#: ajapaik/ajapaik/views.py:2439 ajapaik/ajapaik/views.py:2460 +#: ajapaik/ajapaik/views.py:2619 ajapaik/ajapaik/views.py:2640 #, python-format msgid "Error uploading file: %s (%s)" msgstr "Error uploading file: %s (%s)" -#: ajapaik/ajapaik/views.py:2457 +#: ajapaik/ajapaik/views.py:2637 msgid "Photo already exists in Ajapaik" msgstr "Photo already exists in Ajapaik" -#: ajapaik/ajapaik/views.py:2479 +#: ajapaik/ajapaik/views.py:2659 msgid "Please add pictures to your album" msgstr "Please add pictures to your album" -#: ajapaik/ajapaik/views.py:2481 +#: ajapaik/ajapaik/views.py:2661 msgid "Not enough data submitted" msgstr "Not enough data submitted" -#: ajapaik/ajapaik/views.py:2923 +#: ajapaik/ajapaik/views.py:3115 #, python-format msgid "Still from \"%(film)s\" at %(time)s" msgstr "Still from \"%(film)s\" at %(time)s" -#: ajapaik/ajapaik/views.py:3177 +#: ajapaik/ajapaik/views.py:3369 msgid "Photo uploaded" msgstr "Photo uploaded" -#: ajapaik/ajapaik/views.py:3197 +#: ajapaik/ajapaik/views.py:3389 msgid "Album created" msgstr "Album created" -#: ajapaik/ajapaik/views.py:3271 +#: ajapaik/ajapaik/views.py:3463 msgid "Sorry but we fail to post your comment." msgstr "Sorry but we fail to post your comment." -#: ajapaik/ajapaik/views.py:3474 +#: ajapaik/ajapaik/views.py:3705 msgid "Change password" msgstr "Change password" -#: ajapaik/ajapaik/views.py:3478 +#: ajapaik/ajapaik/views.py:3709 msgid "Change display name" msgstr "Change display name" -#: ajapaik/ajapaik/views.py:3480 +#: ajapaik/ajapaik/views.py:3711 msgid "Newsletter and language settings" msgstr "Newsletter and language settings" -#: ajapaik/ajapaik/views.py:3488 +#: ajapaik/ajapaik/views.py:3719 msgid "Merge another Ajapaik account with current one" msgstr "Merge another Ajapaik account with current one" -#: ajapaik/ajapaik/views.py:3571 +#: ajapaik/ajapaik/views.py:3802 msgid "KulKa logo" msgstr "KulKa logo" -#: ajapaik/ajapaik/views.py:3576 +#: ajapaik/ajapaik/views.py:3807 msgid "Ministry of Education logo" msgstr "Ministry of Education logo" -#: ajapaik/ajapaik/views.py:3582 +#: ajapaik/ajapaik/views.py:3813 msgid "EV100 logo" msgstr "EV100 logo" -#: ajapaik/ajapaik/views.py:3589 +#: ajapaik/ajapaik/views.py:3820 msgid "KYSK logo" msgstr "KYSK logo" -#: ajapaik/ajapaik/views.py:3594 +#: ajapaik/ajapaik/views.py:3825 msgid "Ministry of Culture" msgstr "Ministry of Culture" -#: ajapaik/ajapaik/views.py:3600 +#: ajapaik/ajapaik/views.py:3831 msgid "Republic of Estonia National Heritage Board" msgstr "Republic of Estonia National Heritage Board" -#: ajapaik/ajapaik/views.py:3607 +#: ajapaik/ajapaik/views.py:3838 msgid "Year of Digital Culture 2020" msgstr "Year of Digital Culture 2020" -#: ajapaik/ajapaik/views.py:3614 +#: ajapaik/ajapaik/views.py:3845 msgid "Wikimedia Finland" msgstr "Wikimedia Finland" @@ -2590,17 +2611,17 @@ msgid "Additional remarks about the person (other names etc)" msgstr "Additional remarks about the person (other names etc)" #: ajapaik/ajapaik_face_recognition/models.py:14 -#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:71 +#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:72 msgid "Child" msgstr "Child" #: ajapaik/ajapaik_face_recognition/models.py:15 -#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:74 +#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:75 msgid "Adult" msgstr "Adult" #: ajapaik/ajapaik_face_recognition/models.py:16 -#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:77 +#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:78 msgid "Elderly" msgstr "Elderly" @@ -2645,8 +2666,8 @@ msgid "In case the rectangle is misplaced please choose" msgstr "In case the rectangle is misplaced please choose" #: ajapaik/ajapaik_face_recognition/templates/_add_subject_data_tutorial_modal.html:16 -#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:61 -#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:85 +#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:62 +#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:86 msgid "Not a Face" msgstr "Not a Face" @@ -2655,8 +2676,8 @@ msgid "To see the description of the image, please press" msgstr "To see the description of the image, please press" #: ajapaik/ajapaik_face_recognition/templates/_add_subject_data_tutorial_modal.html:18 -#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:64 -#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:88 +#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:65 +#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:89 msgid "Info" msgstr "Info" @@ -2664,20 +2685,20 @@ msgstr "Info" msgid "Create a new person record" msgstr "Create a new person record" -#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:58 -#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:82 +#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:59 +#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:83 msgid "Not sure" msgstr "Not sure" -#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:94 +#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:95 msgid "Skip" msgstr "Skip" -#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:98 +#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:99 msgid "Currently the gender is" msgstr "Currently the gender is" -#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:100 +#: ajapaik/ajapaik_face_recognition/templates/add_subject_data.html:101 msgid "Currently the age is" msgstr "Currently the age is" @@ -2733,6 +2754,18 @@ msgstr "Your suggestion has been saved" msgid "You must specify a new value when making a suggestion" msgstr "You must specify a new value when making a suggestion" +#~ msgid "See also – Sift.pics" +#~ msgstr "See also – Sift.pics" + +#~ msgid "Newsletters" +#~ msgstr "Newsletters" + +#~ msgid "If the photos are from the same place, specify a location here" +#~ msgstr "If the photos are from the same place, specify a location here" + +#~ msgid "Place" +#~ msgstr "Place" + #~ msgid "Show albums with pictures with back sides" #~ msgstr "Show albums with pictures with back sides" diff --git a/ajapaik/ajapaik/migrations/0026_photo_soft_deleted.py b/ajapaik/ajapaik/migrations/0026_photo_soft_deleted.py new file mode 100644 index 000000000..7f64f8004 --- /dev/null +++ b/ajapaik/ajapaik/migrations/0026_photo_soft_deleted.py @@ -0,0 +1,17 @@ +# Generated by Django 3.2.20 on 2024-07-08 19:16 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ('ajapaik', '0025_importblacklist'), + ] + + operations = [ + migrations.AddField( + model_name='photo', + name='soft_deleted', + field=models.BooleanField(default=False, help_text='Hide image from being accessed outside of Admin'), + ), + ] diff --git a/ajapaik/ajapaik/models.py b/ajapaik/ajapaik/models.py index c6ab329d9..690be9a4d 100644 --- a/ajapaik/ajapaik/models.py +++ b/ajapaik/ajapaik/models.py @@ -537,16 +537,15 @@ def get_album_type(self): return Album.TYPE_CHOICES[self.atype][1] -# Ugly hack to exclude specific photos for some whiny individuals +# Ugly hack for takedown notices and parties who regret their past actions class PhotoManager(EstimatedCountManager): def get_queryset(self): return super(PhotoManager, self).get_queryset().exclude(source_key__startswith="ERM Fk 2903").exclude( - source_key__startswith="TLM F 10198:") + source_key__startswith="TLM F 10198:").exclude(soft_deleted=True) class Photo(Model): objects = EstimatedCountManager() - objects = PhotoManager() # Removed sorl ImageField because of https://github.com/mariocesar/sorl-thumbnail/issues/295 image = ImageField(_('Image'), upload_to='uploads', blank=True, null=True, max_length=255, height_field='height', @@ -660,6 +659,7 @@ class Photo(Model): viewpoint_elevation = PositiveSmallIntegerField(_('Viewpoint elevation'), choices=VIEWPOINT_ELEVATION_CHOICES, blank=True, null=True) description_original_language = CharField(_('Description original language'), max_length=255, blank=True, null=True) + soft_deleted = BooleanField(default=False, help_text=_("Hide image from being accessed outside of Admin")) original_lat = None original_lon = None