diff options
author | Micah Lee <micah@micahflee.com> | 2021-05-25 17:08:19 -0700 |
---|---|---|
committer | Micah Lee <micah@micahflee.com> | 2021-05-25 17:08:19 -0700 |
commit | 40919dca6ff01b996eaf8fec44e6150a101864db (patch) | |
tree | c5248c15589c58289e6bc7988c4106966330f513 /desktop | |
parent | dc7b80e2ef307ca9adc0514603a47f5057e5215f (diff) | |
parent | c682b7ec01bdd395a0bbc8e652473bc9de90067b (diff) | |
download | onionshare-40919dca6ff01b996eaf8fec44e6150a101864db.tar.gz onionshare-40919dca6ff01b996eaf8fec44e6150a101864db.zip |
Merge branch 'develop' into 1347_micah_scroll_options
Diffstat (limited to 'desktop')
-rw-r--r-- | desktop/src/onionshare/resources/locale/bn.json | 11 | ||||
-rw-r--r-- | desktop/src/onionshare/resources/locale/de.json | 4 | ||||
-rw-r--r-- | desktop/src/onionshare/resources/locale/el.json | 106 | ||||
-rw-r--r-- | desktop/src/onionshare/resources/locale/fr.json | 8 | ||||
-rw-r--r-- | desktop/src/onionshare/resources/locale/gl.json | 7 | ||||
-rw-r--r-- | desktop/src/onionshare/resources/locale/hi.json | 9 | ||||
-rw-r--r-- | desktop/src/onionshare/resources/locale/nl.json | 32 | ||||
-rw-r--r-- | desktop/src/onionshare/resources/locale/ru.json | 13 | ||||
-rw-r--r-- | desktop/src/onionshare/resources/locale/tr.json | 6 | ||||
-rw-r--r-- | desktop/src/onionshare/resources/locale/uk.json | 6 | ||||
-rw-r--r-- | desktop/tests/gui_base_test.py | 14 | ||||
-rw-r--r-- | desktop/tests/test_gui_chat.py | 33 | ||||
-rw-r--r-- | desktop/tests/test_gui_receive.py | 19 | ||||
-rw-r--r-- | desktop/tests/test_gui_share.py | 17 | ||||
-rw-r--r-- | desktop/tests/test_gui_website.py | 16 |
15 files changed, 222 insertions, 79 deletions
diff --git a/desktop/src/onionshare/resources/locale/bn.json b/desktop/src/onionshare/resources/locale/bn.json index f0ab0d26..519ed878 100644 --- a/desktop/src/onionshare/resources/locale/bn.json +++ b/desktop/src/onionshare/resources/locale/bn.json @@ -285,5 +285,14 @@ "gui_main_page_chat_button": "চ্যাটিং শুরু করো", "gui_main_page_website_button": "হোস্টিং শুরু করো", "gui_main_page_receive_button": "গ্রহণ শুরু করো", - "gui_color_mode_changed_notice": "নতুন রঙের মোড প্রয়োগ করার জন্য OnionShare পুনরারম্ভ করুন।" + "gui_color_mode_changed_notice": "নতুন রঙের মোড প্রয়োগ করার জন্য OnionShare পুনরারম্ভ করুন।", + "history_receive_read_message_button": "বার্তা পড়ুন", + "mode_settings_receive_webhook_url_checkbox": "বিজ্ঞপ্তি ওয়েবহুক ব্যবহার করুন", + "mode_settings_receive_disable_files_checkbox": "ফাইল আপলোড করা অক্ষম করুন", + "mode_settings_receive_disable_text_checkbox": "পাঠ্য জমা দেওয়া অক্ষম করুন", + "mode_settings_title_label": "কাস্টম শিরোনাম", + "gui_status_indicator_chat_started": "চ্যাট করছে", + "gui_status_indicator_chat_scheduled": "শিডিউল করা হয়েছে…", + "gui_status_indicator_chat_working": "শুরু…", + "gui_status_indicator_chat_stopped": "চ্যাট করতে প্রস্তুত" } diff --git a/desktop/src/onionshare/resources/locale/de.json b/desktop/src/onionshare/resources/locale/de.json index 611cc4ce..4f04dd5b 100644 --- a/desktop/src/onionshare/resources/locale/de.json +++ b/desktop/src/onionshare/resources/locale/de.json @@ -303,6 +303,6 @@ "mode_settings_title_label": "Benutzerdefinierter Titel", "gui_status_indicator_chat_started": "Chatted", "gui_status_indicator_chat_scheduled": "Geplant…", - "gui_status_indicator_chat_working": "Starte…", + "gui_status_indicator_chat_working": "Startet…", "gui_status_indicator_chat_stopped": "Bereit zum Chatten" -} +}
\ No newline at end of file diff --git a/desktop/src/onionshare/resources/locale/el.json b/desktop/src/onionshare/resources/locale/el.json index be7e7d46..173982a4 100644 --- a/desktop/src/onionshare/resources/locale/el.json +++ b/desktop/src/onionshare/resources/locale/el.json @@ -10,7 +10,7 @@ "not_a_readable_file": "Το {0:s} δεν είναι αναγνώσιμο αρχείο.", "no_available_port": "Δεν βρέθηκε διαθέσιμη θύρα για να ξεκινήσει η υπηρεσία onion", "other_page_loaded": "Η διεύθυνση φορτώθηκε", - "close_on_autostop_timer": "Τερματίστηκε λόγω της αυτόματης διακοπής", + "close_on_autostop_timer": "Τερματίστηκε λόγω αυτόματης διακοπής", "closing_automatically": "Τερματίστηκε λόγω ολοκλήρωσης της λήψης", "timeout_download_still_running": "Αναμονή ολοκλήρωσης της λήψης", "large_filesize": "Προειδοποίηση: Η αποστολή μεγάλου όγκου δεδομένων μπορεί να διαρκέσει ώρες", @@ -39,8 +39,8 @@ "gui_share_stop_server": "Τερματισμός διαμοιρασμού", "gui_share_stop_server_autostop_timer": "Διακοπή διαμοιρασμού ({})", "gui_share_stop_server_autostop_timer_tooltip": "Το χρονόμετρο αυτόματου τερματισμού τελειώνει σε {}", - "gui_receive_start_server": "Εκκίνηση κατάστασης λήψης", - "gui_receive_stop_server": "Τερματισμός κατάστασης λήψης", + "gui_receive_start_server": "Εκκίνηση λειτουργίας λήψης", + "gui_receive_stop_server": "Τερματισμός λειτουργίας λήψης", "gui_receive_stop_server_autostop_timer": "Διακοπή λειτουργίας λήψης (απομένουν {})", "gui_receive_stop_server_autostop_timer_tooltip": "Το χρονόμετρο αυτόματου τερματισμού τελειώνει σε {}", "gui_copy_url": "Αντιγραφή διεύθυνσης", @@ -49,9 +49,9 @@ "gui_no_downloads": "Καμία λήψη ως τώρα", "gui_canceled": "Ακυρώθηκε", "gui_copied_url_title": "Η διεύθυνση OnionShare αντιγράφτηκε", - "gui_copied_url": "Η διεύθυνση OnionShare αντιγράφτηκε στον πίνακα", + "gui_copied_url": "Η διεύθυνση OnionShare αντιγράφτηκε στο πρόχειρο", "gui_copied_hidservauth_title": "Το HidServAuth αντιγράφτηκε", - "gui_copied_hidservauth": "Το HidServAuth αντιγράφτηκε στον πίνακα", + "gui_copied_hidservauth": "Το HidServAuth αντιγράφτηκε στο πρόχειρο", "gui_please_wait": "Ξεκινάμε... Κάντε κλικ για ακύρωση.", "gui_download_upload_progress_complete": "%p%, {0:s} πέρασαν.", "gui_download_upload_progress_starting": "{0:s}, %p% (υπολογισμός)", @@ -62,8 +62,8 @@ "gui_receive_quit_warning": "Αυτή τη στιγμή παραλαμβάνονται αρχείων. Είστε σίγουρος/η πώς θέλετε να κλείσετε το OnionShare;", "gui_quit_warning_quit": "Έξοδος", "gui_quit_warning_dont_quit": "Ακύρωση", - "error_rate_limit": "Κάποιος/α έκανε πολλαπλές αποτυχημένες προσπάθειες να μαντέψει τον κωδικό σας. Γι' αυτό, το OnionShare σταμάτησε τον server. Ξεκινήστε πάλι το διαμοιρασμό και στείλτε στον/ην παραλήπτη/τρια μια νέα διεύθυνση για διαμοιρασμό.", - "zip_progress_bar_format": "Συμπίεση: %p%", + "error_rate_limit": "Κάποιος/α προσπάθησε να μαντέψει τον κωδικό σας πολλές φορές. Για αυτό, το OnionShare τερματίστηκε αυτόματα. Πρέπει να ξεκινήσετε πάλι τον διαμοιρασμό και να στείλετε στον/ην παραλήπτη/τρια μια νέα διεύθυνση για να διαμοιραστούν αρχεία και μηνύματα μαζί σας.", + "zip_progress_bar_format": "Γίνεται συμπίεση: %p%", "error_stealth_not_supported": "Για τη χρήση εξουσιοδότησης πελάτη, χρειάζεστε τουλάχιστον το Tor 0.2.9.1-alpha (ή τον Tor Browser 6.5) και το python3-stem 1.5.0.", "error_ephemeral_not_supported": "Το OnionShare απαιτεί τουλάχιστον το Tor 0.2.7.1 και το python3-stem 1.4.0.", "gui_settings_window_title": "Ρυθμίσεις", @@ -71,7 +71,7 @@ "gui_settings_stealth_option": "Χρήση εξουσιοδότησης πελάτη", "gui_settings_stealth_hidservauth_string": "Έχοντας αποθηκεύσει το ιδιωτικό σας κλειδί για επαναχρησιμοποίηση, μπορείτε πλέον να επιλέξετε την αντιγραφή του HidServAuth σας.", "gui_settings_autoupdate_label": "Έλεγχος για νέα έκδοση", - "gui_settings_autoupdate_option": "Ενημερώστε με όταν είναι διαθέσιμη μια νέα έκδοση", + "gui_settings_autoupdate_option": "Ενημερώστε με μόλις γίνει διαθέσιμη μια νέα έκδοση", "gui_settings_autoupdate_timestamp": "Τελευταίος έλεγχος: {}", "gui_settings_autoupdate_timestamp_never": "Ποτέ", "gui_settings_autoupdate_check_button": "Έλεγχος για νέα έκδοση", @@ -86,20 +86,20 @@ "gui_settings_connection_type_test_button": "Έλεγχος σύνδεσης με το Tor", "gui_settings_control_port_label": "Πύλη ελέγχου", "gui_settings_socket_file_label": "Αρχείο μετάβασης", - "gui_settings_socks_label": "πύλη SOCKS", + "gui_settings_socks_label": "Πύλη SOCKS", "gui_settings_authenticate_label": "Ρυθμίσεις επαλήθευσης Tor", "gui_settings_authenticate_no_auth_option": "Χωρίς επαλήθευση ή επαλήθευση με cookie", "gui_settings_authenticate_password_option": "Κωδικός", "gui_settings_password_label": "Κωδικός", - "gui_settings_tor_bridges": "Υποστήριξη Tor bridge", - "gui_settings_tor_bridges_no_bridges_radio_option": "Να μη χρησιμοποιηθούν bridges", + "gui_settings_tor_bridges": "Υποστήριξη γεφυρών Tor", + "gui_settings_tor_bridges_no_bridges_radio_option": "Να μη χρησιμοποιηθούν γέφυρες", "gui_settings_tor_bridges_obfs4_radio_option": "Να χρησιμοποιηθούν τα ενσωματωμένα obfs4 pluggable transports", - "gui_settings_tor_bridges_obfs4_radio_option_no_obfs4proxy": "Να χρησιμοποιηθούν τα ενσωματωμένα obfs4 pluggable transports (απαιτείται το obfs4proxy)", + "gui_settings_tor_bridges_obfs4_radio_option_no_obfs4proxy": "Να χρησιμοποιηθούν τα ενσωματωμένα obfs4 pluggable transports (απαιτείται το πρόγραμμα obfs4proxy)", "gui_settings_tor_bridges_meek_lite_azure_radio_option": "Να χρησιμοποιηθουν τα ενσωματωμένα meek_lite (Azure) pluggable transports", - "gui_settings_tor_bridges_meek_lite_azure_radio_option_no_obfs4proxy": "Να χρησιμοποιηθούν τα ενσωματωμένα meek_lite (Azure) pluggable transports (απαιτείται το obfs4proxy)", + "gui_settings_tor_bridges_meek_lite_azure_radio_option_no_obfs4proxy": "Να χρησιμοποιηθούν τα ενσωματωμένα meek_lite (Azure) pluggable transports (απαιτείται το πρόγραμμα obfs4proxy)", "gui_settings_meek_lite_expensive_warning": "Προσοχή: Τα meek_lite bridges επιβαρύνουν πολύ το Tor Project στη λειτουργία. <br><br> Χρησιμοποιήστε τα μόνο αν δεν μπορείτε να συνδεθείτε κατ' ευθείαν στο Tor μέσω obfs4 transports ή άλλων κανονικών bridges.", - "gui_settings_tor_bridges_custom_radio_option": "Χρήση παραμετροποιημένων bridges", - "gui_settings_tor_bridges_custom_label": "Αποκτήστε bridges στο <a href=\"https://bridges.torproject.org/options?lang=el\"> https://bridges.torproject.org</a>", + "gui_settings_tor_bridges_custom_radio_option": "Χρήση παραμετροποιημένων γεφυρών", + "gui_settings_tor_bridges_custom_label": "Αποκτήστε γέφυρες στο <a href=\"https://bridges.torproject.org/options?lang=el\"> https://bridges.torproject.org</a>", "gui_settings_tor_bridges_invalid": "Δεν λειτούργησε κάποιο από τα bridges που προσθέσατε.\nΞαναελέγξτε τα ή προσθέστε άλλα.", "gui_settings_button_save": "Αποθήκευση", "gui_settings_button_cancel": "Άκυρο", @@ -107,30 +107,30 @@ "gui_settings_autostop_timer_checkbox": "Χρήση χρονομέτρου αυτόματης διακοπής", "gui_settings_autostop_timer": "Διακοπή διαμοιρασμού σε:", "settings_error_unknown": "Αποτυχία σύνδεσης στον ελεγκτή Tor, γιατί οι ρυθμίσεις σας δεν βγάζουν κανένα νόημα.", - "settings_error_automatic": "Αδυναμία σύνδεσης στον ελεγκτή Tor. Λειτουργεί ο Tor Browser (διαθέσιμος στο torproject.org) στο παρασκήνιο;", - "settings_error_socket_port": "Αδυναμία σύνδεσης στον ελεγκτή Tor στις {}:{}.", - "settings_error_socket_file": "Αποτυχία σύνδεσης στον ελεγκτή Tor χρησιμοποιώντας το αρχείο socket {}.", + "settings_error_automatic": "Δεν ήταν δυνατή η σύνδεση στον ελεγκτή Tor. Λειτουργεί ο Tor Browser (διαθέσιμος στο torproject.org) στο παρασκήνιο;", + "settings_error_socket_port": "Δεν ήταν δυνατή η σύνδεση στον ελεγκτή Tor στις {}:{}.", + "settings_error_socket_file": "Δεν ήταν δυνατή η σύνδεση στον ελεγκτή Tor χρησιμοποιώντας το αρχείο socket {}.", "settings_error_auth": "Εγινε σύνδεση με {}:{}, αλλα δεν μπορεί να γίνει πιστοποίηση. Ίσως δεν είναι ελεγκτής Tor;", "settings_error_missing_password": "Έγινε σύνδεση με τον ελεγκτή Tor, αλλά απαιτείται κωδικός για πιστοποίηση.", - "settings_error_unreadable_cookie_file": "Έγινε σύνδεση με τον ελεγκτή Tor, αλλα ο κωδικός πιθανόν να είναι λάθος, ή δεν επιτρέπεται στο χρήστη να διαβάζει αρχεία cookie.", + "settings_error_unreadable_cookie_file": "Έγινε σύνδεση με τον ελεγκτή Tor, αλλα ο κωδικός ενδέχεται να είναι λανθασμένος, ή δεν σας επιτρέπεται να διαβάζετε αρχεία cookie.", "settings_error_bundled_tor_not_supported": "Η χρήση της έκδοσης Tor που περιέχεται στο OnionShare δεν είναι συμβατή με το περιβάλλον προγραμματιστή σε Windows ή macOS.", - "settings_error_bundled_tor_timeout": "Η σύνδεση με Tor αργεί αρκετά. Ισως δεν είστε συνδεδεμένοι στο Διαδίκτυο ή το ρολόι του συστήματος δεν είναι σωστό;", + "settings_error_bundled_tor_timeout": "Η σύνδεση με Tor καθυστερεί αρκετά. Ίσως δεν είστε συνδεδεμένοι στο Διαδίκτυο ή το ρολόι του συστήματος δεν είναι ρυθμισμένο σωστά;", "settings_error_bundled_tor_broken": "Το OnionShare δεν μπορεί να συνδεθεί με το Tor στο παρασκήνιο:\n{}", - "settings_test_success": "Εγινε σύνδεση με τον ελεγκτή Tor.\n\nΕκδοση Tor: {}\nΥποστηρίζει εφήμερες υπηρεσίες onion: {}.\nΥποστηρίζει πιστοποίηση πελάτη: {}.\nΥποστηρίζει νέας γενιάς διευθύνσεις .onion: {}.", - "error_tor_protocol_error": "Υπήρξε σφάλμα με το Tor: {}", + "settings_test_success": "Εγινε σύνδεση με τον ελεγκτή Tor.\n\nΕκδοση Tor: {}\nΥποστηρίζει εφήμερες υπηρεσίες onion: {}.\nΥποστηρίζει πιστοποίηση πελάτη: {}.\nΥποστηρίζει διευθύνσεις .onion νέας γενιάς: {}.", + "error_tor_protocol_error": "Προέκυψε σφάλμα με το Tor: {}", "error_tor_protocol_error_unknown": "Υπήρξε άγνωστο σφάλμα με το Tor", "error_invalid_private_key": "Αυτο το ιδιωτικό κλειδί δεν υποστηρίζεται", "connecting_to_tor": "Γίνεται σύνδεση στο δίκτυο Tor", - "update_available": "Βγήκε ενα νέο OnionShare. <a href='{}'>Κάντε κλικ εδώ</a> για να το λάβετε.<br><br>Χρησιμοποιείτε {} και το πιό πρόσφατο είναι το {}.", - "update_error_check_error": "Δεν μπόρεσε να γίνει έλεγχος για νέα έκδοση: ίσως δεν είστε συνδεδεμένοι στο Tor ή ο ιστότοπος OnionShare είναι εκτός λειτουργίας;", - "update_error_invalid_latest_version": "Δεν μπορεί να γίνει έλεγχος για νέα έκδοση: η ιστοσελίδα OnionShare αναφέρει ότι η τελευταία έκδοση είναι η μη αναγνωρίσιμη \"{}\"…", - "update_not_available": "Έχετε την πιό πρόσφατη έκδοση του OnionShare.", - "gui_tor_connection_ask": "Άνοιγμα των ρυθμίσεων για να επιλύσετε την σύνδεση με το Tor;", + "update_available": "Υπάρχει διαθέσιμη ενημέρωση. <a href='{}'>Κάντε κλικ εδώ</a> για να την αποκτήσετε.<br><br>Χρησιμοποιείτε την έκδοση {}, ενώ η πιο πρόσφατη είναι η {}.", + "update_error_check_error": "Δεν ήταν δυνατός ο έλεγχος για ενημερώσεις: ίσως δεν είστε συνδεδεμένος στο Tor ή ο ιστότοπος OnionShare είναι εκτός λειτουργίας;", + "update_error_invalid_latest_version": "Δεν ήταν δυνατός ο έλεγχος για ενημερώσεις: η ιστοσελίδα OnionShare αναφέρει ότι η πιο πρόσφατη έκδοση είναι η μη αναγνωρίσιμη \"{}\"…", + "update_not_available": "Χρησιμοποιείτε την πιο πρόσφατη έκδοση του OnionShare.", + "gui_tor_connection_ask": "Θα θέλατε να ανοίξετε τις ρυθμίσεις για να φτιάξετε την σύνδεσή σας με το Tor;", "gui_tor_connection_ask_open_settings": "Ναι", "gui_tor_connection_ask_quit": "Έξοδος", - "gui_tor_connection_error_settings": "Προσπαθήστε να αλλάξετε τον τρόπο σύνδεσης του OnionShare με το δίκτυο Tor από τις ρυθμίσεις.", - "gui_tor_connection_canceled": "Δεν μπόρεσε να γίνει σύνδεση στο Tor.\n\nΕλέγξτε ότι είστε συνδεδεμένος/η στο Διαδίκτυο, επανεκκινήστε το OnionShare και ρυθμίστε την σύνδεση με το Tor.", - "gui_tor_connection_lost": "Έγινε αποσύνδεση από το Tor.", + "gui_tor_connection_error_settings": "Ίσως να ήταν καλή ιδέα να αλλάξετε τον τρόπο σύνδεσης του OnionShare με το δίκτυο Tor από τις ρυθμίσεις.", + "gui_tor_connection_canceled": "Δεν ήταν δυνατή η σύνδεση στο δίκτυο του Tor.\n\nΕλέγξτε ότι είστε συνδεδεμένος/η στο Διαδίκτυο, επανεκκινήστε το OnionShare και ρυθμίστε την σύνδεση με το Tor.", + "gui_tor_connection_lost": "Έγινε αποσύνδεση από το δίκτυο του Tor.", "gui_server_started_after_autostop_timer": "Το χρονόμετρο αυτόματης διακοπής τελείωσε πριν την εκκίνηση του server. Παρακαλώ κάντε ένα νέο διαμοιρασμό.", "gui_server_autostop_timer_expired": "Το χρονόμετρο αυτόματης διακοπής έχει ήδη τελειώσει. Παρακαλώ ρυθμίστε το για να ξεκινήσετε το διαμοιρασμό.", "share_via_onionshare": "Μοιραστείτε μέσω OnionShare", @@ -138,15 +138,15 @@ "gui_save_private_key_checkbox": "Χρήση μόνιμης διεύθυνσης", "gui_share_url_description": "<b>Οποιοσδήποτε</b> με αυτή τη διεύθυνση OnionShare μπορεί να <b>κατεβάσει</b> τα αρχεία σας χρησιμοποιώντας το <b>Tor Browser</b>: <img src='{}' />", "gui_receive_url_description": "<b>Οποιοσδήποτε</b> με αυτή τη διεύθυνση OnionShare, μπορεί να <b>ανεβάσει</b> αρχεία στον υπολογιστή σας χρησιμοποιώντας το <b>Tor Browser</b>: <img src='{}' />", - "gui_url_label_persistent": "Αυτός ο διαμοιρασμός δεν θα λήξει αυτόματα.<br><br>Οποιοσδήποτε επακόλουθος διαμοιρασμός θα επαναχρησιμοποιήσει αυτή τη διεύθυνση. (Για να χρησιμοποιήσετε διευθύνσεις μιας χρήσης, απενεργοποιήστε τη λειτουργία \"Χρήση μόνιμης διεύθυνσης\" στις Ρυθμίσεις.)", - "gui_url_label_stay_open": "Αυτός ο διαμοιρασμός δε λήγει αυτόματα.", + "gui_url_label_persistent": "Αυτή η σελίδα διαμοιρασμού δεν θα πάψει να λειτουργεί αυτόματα.<br><br>Όσοι μοιράζονται αρχεία μαζί σας θα μπορέσουν να ξαναχρησιμοποιήσουν αυτή τη διεύθυνση αργότερα. (Για να χρησιμοποιήσετε διευθύνσεις μιας χρήσης, απενεργοποιήστε τη λειτουργία \"Χρήση μόνιμης διεύθυνσης\" στις Ρυθμίσεις.)", + "gui_url_label_stay_open": "Αυτή η σελίδα διαμοιρασμού δεν θα πάψει να λειτουργεί αυτόματα.", "gui_url_label_onetime": "Αυτός ο διαμοιρασμός θα σταματήσει μετά την πρώτη λήψη.", - "gui_url_label_onetime_and_persistent": "Αυτός ο διαμοιρασμός δεν θα λήξει αυτόματα.<br><br>Οποιοσδήποτε επακόλουθος διαμοιρασμός θα επαναχρησιμοποιήσει αυτή τη διεύθυνση. (Για να χρησιμοποιήσετε διευθύνσεις μιας χρήσης, απενεργοποιήστε τη λειτουργία \"Χρήση μόνιμης διεύθυνσης\" στις Ρυθμίσεις.)", + "gui_url_label_onetime_and_persistent": "Αυτή η σελίδα διαμοιρασμού δεν θα πάψει να λειτουργεί αυτόματα.<br><br>Οποιοσδήποτε επακόλουθος διαμοιρασμός θα επαναχρησιμοποιήσει αυτή τη διεύθυνση. (Για να χρησιμοποιήσετε διευθύνσεις μιας χρήσης, απενεργοποιήστε τη λειτουργία \"Χρήση μόνιμης διεύθυνσης\" στις Ρυθμίσεις.)", "gui_status_indicator_share_stopped": "Έτοιμο για διαμοιρασμό", "gui_status_indicator_share_working": "Εκκίνηση…", - "gui_status_indicator_share_started": "Διαμοιρασμός", + "gui_status_indicator_share_started": "Γίνεται αποστολή", "gui_status_indicator_receive_stopped": "Έτοιμο για λήψη", - "gui_status_indicator_receive_working": "Ξεκινάει…", + "gui_status_indicator_receive_working": "Γίνεται εκκίνηση…", "gui_status_indicator_receive_started": "Γίνεται λήψη", "gui_file_info": "{} αρχεία, {}", "gui_file_info_single": "{} αρχείο, {}", @@ -186,7 +186,7 @@ "gui_add_files": "Προσθήκη αρχείων", "gui_add_folder": "Προσθήκη φακέλου", "gui_connect_to_tor_for_onion_settings": "Συνδεθείτε στο Tor για να δείτε τις ρυθμίσεις της υπηρεσίας onion", - "error_cannot_create_data_dir": "Δεν μπόρεσε να δημιουργηθεί φάκελος δεδομένων OnionShare: {}", + "error_cannot_create_data_dir": "Δεν ήταν δυνατή η δημιουργία φακέλου δεδομένων OnionShare: {}", "receive_mode_data_dir": "Τα αρχεία που στάλθηκαν σε εσας εμφανίζοντε στον φάκελο: {}", "gui_settings_data_dir_label": "Αποθήκευση αρχείων σε", "gui_settings_data_dir_browse_button": "Περιήγηση", @@ -207,7 +207,7 @@ "gui_all_modes_progress_complete": "%p%, πέρασαν {0:s}.", "gui_all_modes_progress_starting": "{0:s}, %p% (γίνεται υπολογισμός)", "gui_all_modes_progress_eta": "{0:s}, Εκτιμώμενος χρόνος: {1:s}, %p%", - "gui_share_mode_no_files": "Δεν στάλθηκαν ακόμα αρχεία", + "gui_share_mode_no_files": "Δεν έχουν αποσταλεί ακόμα αρχεία", "gui_share_mode_autostop_timer_waiting": "Αναμένεται η ολοκλήρωση της αποστολής", "gui_receive_mode_no_files": "Δεν έχει γίνει λήψη αρχείων ακόμα", "gui_receive_mode_autostop_timer_waiting": "Αναμένεται η ολοκλήρωση της λήψης", @@ -216,7 +216,7 @@ "gui_all_modes_transfer_canceled": "Ακυρώθηκε {}", "gui_stop_server_autostop_timer_tooltip": "Το χρονόμετρο αυτόματης διακοπής λήγει σε {}", "gui_start_server_autostart_timer_tooltip": "Το χρονόμετρο αυτόματης εκκίνησης λήγει σε {}", - "gui_waiting_to_start": "Προγραμματισμένο να ξεκινήσει σε {}. Πατήστε για ακύρωση.", + "gui_waiting_to_start": "Προγραμματισμένο να ξεκινήσει σε {}. Κάντε κλικ για ακύρωση.", "gui_settings_autostart_timer_checkbox": "Χρήση χρονομέτρου αυτόματης έναρξης", "gui_settings_autostart_timer": "Εκκίνηση διαμοιρασμού σε:", "gui_server_autostart_timer_expired": "Η προγραμματισμένη ώρα έχει ήδη παρέλθει. Παρακαλώ ρυθμίστε τη για να ξεκινήσετε το διαμοιρασμό.", @@ -227,16 +227,16 @@ "hours_first_letter": "ώ", "minutes_first_letter": "λ", "seconds_first_letter": "δ", - "gui_website_url_description": "<b>Οποιοσδήποτε</b> με αυτή τη διεύθυνση OnionShare μπορεί <b>να επισκεφτεί</b> την ιστοσελία χρησιμοποιώντας τον <b>Tor Browser</b>: <img src='{}' />", + "gui_website_url_description": "<b>Οποιοσδήποτε</b> με αυτή τη διεύθυνση OnionShare μπορεί <b>να επισκεφτεί</b> την ιστοσελίδα χρησιμοποιώντας τον <b>Tor Browser</b>: <img src='{}' />", "gui_mode_website_button": "Δημοσίευση ιστοσελίδας", - "gui_website_mode_no_files": "Η ιστοσελίδα δεν έχει μοιραστεί ακόμα", - "incorrect_password": "Λάθος κωδικός πρόσβασης", + "gui_website_mode_no_files": "Δεν έχει γίνει διαμοιρασμός ιστοσελίδας ακόμα", + "incorrect_password": "Λάθος κωδικός", "gui_settings_individual_downloads_label": "Απεπιλέξτε για να επιτρέψετε τη λήψη μεμονωμένων αρχείων", "history_requests_tooltip": "{} αιτήματα δικτύου", "gui_settings_csp_header_disabled_option": "Απενεργοποίηση της κεφαλίδας Content Security Policy", "gui_settings_website_label": "Ρυθμίσεις ιστοσελίδας", "gui_open_folder_error": "Το άνοιγμα του φακέλου με xdg-open απέτυχε. Το αρχείο βρίσκετε : {}", - "gui_receive_flatpak_data_dir": "Επειδή εγκαταστήσατε το OnionShare με χρήση του Flatpak, πρέπει να αποθηκεύσετε τα αρχεία σε φάκελο ~/OnionShare.", + "gui_receive_flatpak_data_dir": "Επειδή έχετε εγκαταστήσει το OnionShare μέσω Flatpak, θα πρέπει να αποθηκεύσετε τα αρχεία μέσα σε έναν φάκελο στο ~/OnionShare.", "gui_chat_stop_server": "Τερματισμός διακομιστή συνομιλίας", "gui_chat_start_server": "Έναρξη διακομιστή συνομιλίας", "mode_settings_website_disable_csp_checkbox": "Μην στέλνετε κεφαλίδα με περιεχόμενο από την πολιτικής ασφάλειας σας (επιτρέπει στην ιστοσελίδα σας να χρησιμοποιεί πόρους τρίτων)", @@ -252,15 +252,15 @@ "mode_settings_advanced_toggle_hide": "Απόκρυψη προχωρημένων ρυθμίσεων", "mode_settings_advanced_toggle_show": "Εμφάνιση προχωρημένων ρυθμίσεων", "gui_quit_warning_cancel": "Άκυρο", - "gui_quit_warning_description": "Είναι ενεργή η κοινή χρήση σε ορισμένες καρτέλες. Εάν κάνετε έξοδο, όλες οι καρτέλες σας θα κλείσουν. Είστε σίγουροι;", - "gui_quit_warning_title": "Είστε σίγουροι;", + "gui_quit_warning_description": "Είναι ενεργή η κοινή χρήση σε ορισμένες καρτέλες. Εάν κάνετε έξοδο, όλες οι καρτέλες σας θα κλείσουν. Είστε σίγουρος/η;", + "gui_quit_warning_title": "Είστε σίγουρος/η;", "gui_close_tab_warning_cancel": "Άκυρο", "gui_close_tab_warning_close": "Κλείσιμο", - "gui_close_tab_warning_website_description": "Φιλοξενείτε ενεργά έναν ιστότοπο. Είστε βέβαιοι ότι θέλετε να κλείσετε την καρτέλα;", - "gui_close_tab_warning_receive_description": "Η λήψη αρχείων δεν ολοκληρώθηκε. Είστε βέβαιοι ότι θέλετε να κλείσετε την καρτέλα;", - "gui_close_tab_warning_share_description": "Η αποστολή αρχείων δεν ολοκληρώθηκε. Είστε βέβαιοι ότι θέλετε να κλείσετε την καρτέλα;", - "gui_close_tab_warning_persistent_description": "Η καρτέλα δεν είναι μόνιμη. Εάν την κλείσετε, θα χαθεί η διεύθυνση onion που χρησιμοποιεί. Είστε βέβαιοι ότι θέλετε να την κλείσετε;", - "gui_close_tab_warning_title": "Είστε σίγουροι;", + "gui_close_tab_warning_website_description": "Φιλοξενείτε έναν ιστότοπο. Είστε βέβαιος/η ότι θέλετε να κλείσετε την καρτέλα;", + "gui_close_tab_warning_receive_description": "Η λήψη αρχείων δεν έχει ολοκληρωθεί. Είστε βέβαιος/η ότι θέλετε να κλείσετε την καρτέλα;", + "gui_close_tab_warning_share_description": "Η αποστολή αρχείων δεν έχει ολοκληρωθεί ακόμα. Είστε βέβαιος/η ότι θέλετε να κλείσετε την καρτέλα;", + "gui_close_tab_warning_persistent_description": "Η καρτέλα δεν είναι μόνιμη. Εάν την κλείσετε, θα χαθεί η διεύθυνση onion που χρησιμοποιείτε. Είστε βέβαιοι ότι θέλετε να την κλείσετε;", + "gui_close_tab_warning_title": "Είστε σίγουρος/η;", "gui_tab_name_chat": "Συνομιλία", "gui_tab_name_website": "Ιστότοπος", "gui_tab_name_receive": "Λήψη", @@ -270,9 +270,9 @@ "gui_main_page_receive_button": "Έναρξη λήψης", "gui_main_page_share_button": "Έναρξη διαμοιρασμού", "gui_new_tab_chat_button": "Συνομιλήστε ανώνυμα", - "gui_new_tab_website_button": "Φιλοξενήστε έναν ιστότοπο", + "gui_new_tab_website_button": "Φιλοξενία ιστότοπου", "gui_new_tab_receive_button": "Λήψη αρχείων", - "gui_new_tab_share_button": "Διαμοιράστε αρχεία", + "gui_new_tab_share_button": "Διαμοιρασμός αρχείων", "gui_new_tab_tooltip": "Άνοιγμα νέας καρτέλας", "gui_new_tab": "Νέα καρτέλα", "gui_qr_code_dialog_title": "Κώδικας QR OnionShare", @@ -282,7 +282,7 @@ "error_port_not_available": "Η θύρα OnionShare δεν είναι διαθέσιμη", "gui_rendezvous_cleanup_quit_early": "Πρόωρη έξοδος", "gui_rendezvous_cleanup": "Αναμονή για τερματισμό των κυκλωμάτων του Tor για να βεβαιωθείτε ότι τα αρχεία σας έχουν μεταφερθεί με επιτυχία.\n\nΑυτό μπορεί να διαρκέσει λίγα λεπτά.", - "gui_chat_url_description": "<b>Οποιοσδήποτε</b> με αυτή τη διεύθυνση του OnionShare μπορεί <b>να συμμετέχει στο chat</b> με χρήση του <b>Tor Browser</b>: <img src='{}' />", + "gui_chat_url_description": "<b>Οποιοσδήποτε</b> με αυτή τη διεύθυνση του OnionShare μπορεί <b>να συμμετέχει στο δωμάτιο συνομιλίας</b> με χρήση του <b>Tor Browser</b>: <img src='{}' />", "gui_color_mode_changed_notice": "Επανεκκινήστε το OnionShare για εφαρμοστεί το νέο χρώμα.", "history_receive_read_message_button": "Ανάγνωση μηνύματος", "mode_settings_receive_webhook_url_checkbox": "Χρήση ειδοποίησης webhook", @@ -293,4 +293,4 @@ "gui_status_indicator_chat_scheduled": "Δρομολόγηση…", "gui_status_indicator_chat_working": "Εκκίνηση…", "gui_status_indicator_chat_stopped": "Έτοιμο για συνομιλία" -} +}
\ No newline at end of file diff --git a/desktop/src/onionshare/resources/locale/fr.json b/desktop/src/onionshare/resources/locale/fr.json index f23a11e9..8c4bf20a 100644 --- a/desktop/src/onionshare/resources/locale/fr.json +++ b/desktop/src/onionshare/resources/locale/fr.json @@ -95,7 +95,7 @@ "settings_error_missing_password": "Vous êtes connecté au contrôleur Tor, mais il exige un mot de passe d’authentification.", "settings_error_unreadable_cookie_file": "Vous êtes connecté au contrôleur Tor, mais le mot de passe est peut-être erroné ou votre utilisateur n’est pas autorisé à lire le fichier témoin.", "settings_error_bundled_tor_not_supported": "Utiliser la version de Tor intégrée à OnionShare ne fonctionne pas en mode développeur sous Windows ou macOS.", - "settings_error_bundled_tor_timeout": "La connexion à Tor prend trop de temps. Vous n’êtes peut-être pas connecté à Internet ou votre horloge système est mal réglée.", + "settings_error_bundled_tor_timeout": "La connexion à Tor prend trop de temps. Vous n’êtes peut-être pas connecté à Internet ou votre horloge système est-elle mal réglée ?", "settings_error_bundled_tor_broken": "OnionShare n’a pas réussi à se connecter à Tor :\n{}", "error_tor_protocol_error": "Une erreur est survenue avec Tor : {}", "error_tor_protocol_error_unknown": "Une erreur inconnue est survenue avec Tor", @@ -300,5 +300,9 @@ "mode_settings_receive_webhook_url_checkbox": "Utiliser un point d’ancrage Web de notification", "mode_settings_receive_disable_files_checkbox": "Désactiver le téléversement de fichiers", "mode_settings_receive_disable_text_checkbox": "Désactiver l’envoi de texte", - "mode_settings_title_label": "Titre personnalisé" + "mode_settings_title_label": "Titre personnalisé", + "gui_status_indicator_chat_started": "En conversation", + "gui_status_indicator_chat_scheduled": "Planifié…", + "gui_status_indicator_chat_working": "Démarrage…", + "gui_status_indicator_chat_stopped": "Prêt à dialoguer" } diff --git a/desktop/src/onionshare/resources/locale/gl.json b/desktop/src/onionshare/resources/locale/gl.json index 86fc7b8e..67b095cc 100644 --- a/desktop/src/onionshare/resources/locale/gl.json +++ b/desktop/src/onionshare/resources/locale/gl.json @@ -196,5 +196,10 @@ "history_receive_read_message_button": "Ler mensaxe", "mode_settings_receive_disable_files_checkbox": "Desactivar a subida de ficheiros", "mode_settings_receive_disable_text_checkbox": "Desactivar o envío de texto", - "mode_settings_title_label": "Título personalizado" + "mode_settings_title_label": "Título personalizado", + "mode_settings_receive_webhook_url_checkbox": "Usar webhook de notificación", + "gui_status_indicator_chat_started": "Conversando", + "gui_status_indicator_chat_scheduled": "Programado…", + "gui_status_indicator_chat_working": "Comezando…", + "gui_status_indicator_chat_stopped": "Preparado para conversar" } diff --git a/desktop/src/onionshare/resources/locale/hi.json b/desktop/src/onionshare/resources/locale/hi.json index 9cfc310d..e5a6d893 100644 --- a/desktop/src/onionshare/resources/locale/hi.json +++ b/desktop/src/onionshare/resources/locale/hi.json @@ -21,7 +21,7 @@ "help_verbose": "", "help_filename": "", "help_config": "", - "gui_drag_and_drop": "साझा शुरू करने के लिए\nफाइलों एवं फोल्डरों को ड्रैग और ड्रॉप करें", + "gui_drag_and_drop": "साझा शुरू करने के लिए फाइलों एवं फोल्डरों को ड्रैग और ड्रॉप करें", "gui_add": "जोड़ें", "gui_add_files": "फाइल जोड़ें", "gui_add_folder": "फोल्डर जोड़ें", @@ -186,5 +186,10 @@ "gui_waiting_to_start": "{} में शुरू होने के लिए शेडयूल है। रद्द करने के लिए क्लिक करें।", "incorrect_password": "पासवर्ड गलत है", "gui_settings_individual_downloads_label": "विशिष्ट फाइलों के डाउनलोड को मंजूरी देने के लिए अचिन्हित करें", - "gui_settings_csp_header_disabled_option": "सामग्री सुरक्षा नियम हेडर को अक्षम करें" + "gui_settings_csp_header_disabled_option": "सामग्री सुरक्षा नियम हेडर को अक्षम करें", + "gui_show_url_qr_code": "क्यूआर कोड दिखाएं", + "gui_chat_stop_server": "चैट सर्वर बंद करें", + "gui_chat_start_server": "चैट सर्वर शुरू करें", + "gui_file_selection_remove_all": "सभी हटाएं", + "gui_remove": "हटाएं" } diff --git a/desktop/src/onionshare/resources/locale/nl.json b/desktop/src/onionshare/resources/locale/nl.json index 2b5ced73..32e8f204 100644 --- a/desktop/src/onionshare/resources/locale/nl.json +++ b/desktop/src/onionshare/resources/locale/nl.json @@ -26,7 +26,7 @@ "help_verbose": "Log OnionShare fouten naar stdout, en web fouten naar disk", "help_filename": "Lijst van bestanden of mappen om te delen", "help_config": "Instelbaar pad naar JSON configuratie bestand (optioneel)", - "gui_drag_and_drop": "Sleep en zet\nbestanden hier neer om het delen te starten", + "gui_drag_and_drop": "Sleep bestanden hier naar toe om het delen te starten", "gui_add": "Toevoegen", "gui_delete": "Verwijder", "gui_choose_items": "Kies", @@ -75,7 +75,7 @@ "gui_settings_button_help": "Help", "gui_settings_autostop_timer": "Stop het delen om:", "settings_saved": "Instellingen opgeslagen in {}", - "settings_error_unknown": "Kan geen verbinding maken met de Tor controller omdat je instellingen nergens op slaan.", + "settings_error_unknown": "Kan geen verbinding maken met de Tor controller, omdat je instellingen nergens op slaan.", "settings_error_automatic": "Kon geen verbinding maken met de Tor controller. Draait Tor Browser (beschikbaar via torproject.org) in de achtergrond?", "settings_error_socket_port": "Kan geen verbinding maken met de Tor controller op {}:{}.", "settings_error_socket_file": "Kan geen verbinding maken met de Tor controller via socket bestand {}.", @@ -88,9 +88,9 @@ "settings_test_success": "Verbonden met de Tor controller.\n\nTor versie: {}\nOndersteunt ephemeral onion services: {}.\nOndersteunt client authentication: {}.\nOndersteunt next-gen .onion addresses: {}.", "error_tor_protocol_error": "Er was een fout met Tor: {}", "connecting_to_tor": "Verbinden met het Tor netwerk", - "update_available": "Nieuwe OnionShare is uitgekomen. <a href='{}'>Klik hier</a> om hem te krijgen.<br><br>Jij gebruikt {} and de laatste is {}.", - "update_error_check_error": "Kon niet controleren op een nieuwe versie: de OnionShare website meldt dat de laatste versie de onherkenbare is '{}' is…", - "update_error_invalid_latest_version": "Kon niet controleren op een nieuwe versie: Wellicht ben je niet met Tor verbonden, of de OnionShare website is niet beschikbaar?", + "update_available": "Nieuwe OnionShare is uitgekomen. <a href='{}'>Klik hier</a> om hem te krijgen.<br><br>Jij gebruikt {} en de laatste is {}.", + "update_error_check_error": "Kon niet controleren op een nieuwe versie: Wellicht ben je niet met Tor verbonden, of de OnionShare website is niet beschikbaar?", + "update_error_invalid_latest_version": "Kon niet controleren op een nieuwe versie: de OnionShare website meldt dat de laatste versie de onherkenbare is '{}' is…", "update_not_available": "Je draait de laatst beschikbare OnionShare.", "gui_tor_connection_ask": "Open de instellingen om het verbindingsprobleem met Tor op te lossen?", "gui_tor_connection_ask_open_settings": "Ja", @@ -139,7 +139,7 @@ "gui_use_legacy_v2_onions_checkbox": "Gebruik ouderwetse adressen", "gui_save_private_key_checkbox": "Gebruik een vast adres", "gui_share_url_description": "<b>1Iedereen</b>2 met dit OnionShare-adres kan je bestanden <b>3binnenhalen</b>4 met de <b>5Tor Browser</b>6: <img src='{}' />", - "gui_receive_url_description": "<b>1Iedereen</b>2 met dit OnionShare adres kan bestanden op je computer <b>3plaatsen</b>4 met de <b>5Tor Browser</b>6: <img src='{}' />7", + "gui_receive_url_description": "<b>Iedereen</b> met dit OnionShare adres kan bestanden op je computer <b>plaatsen</b> met de <b>Tor Browser</b>: <img src='{}' />", "gui_url_label_persistent": "Deze share stopt niet vanzelf. <br><br>Elke volgende share zal het adres hergebruiken. (Om eenmalige adressen te gebruiken, zet \"Gebruik vast adres\" uit in de settings.)", "gui_url_label_stay_open": "Deze share stopt niet automatisch.", "gui_url_label_onetime": "Deze share stopt na de eerste voltooiïng.", @@ -262,10 +262,10 @@ "mode_settings_client_auth_checkbox": "Gebruik client authorisatie", "mode_settings_autostop_timer_checkbox": "Stop onion service op een geplande tijd", "mode_settings_autostart_timer_checkbox": "Start onion service op een geplande tijd", - "mode_settings_persistent_checkbox": "Bewaar dit tabblad, en open het automatisch wanneer ik OnionShare open", + "mode_settings_persistent_checkbox": "Bewaar dit tabblad en open het automatisch wanneer ik OnionShare open", "gui_quit_warning_description": "Delen is actief op sommige van uw tabbladen. Als u stopt, worden al uw tabbladen gesloten. Weet u zeker dat u wilt stoppen?", "gui_close_tab_warning_website_description": "U host actief een website. Weet u zeker dat u dit tabblad wilt sluiten?", - "gui_close_tab_warning_persistent_description": "Dit tabblad is pertinent. Als je het sluit, verlies je het onion adres dat wordt gebruikt. Weet u zeker dat u het wilt sluiten?", + "gui_close_tab_warning_persistent_description": "Dit tabblad heeft een vast onion adres. Als je het tabblad sluit wordt het gebruikte onion adres opgeheven. Weet je zeker dat je dit wil sluiten?", "gui_tab_name_chat": "Chat", "gui_tab_name_website": "Website", "gui_tab_name_receive": "Ontvang", @@ -286,5 +286,19 @@ "gui_chat_stop_server": "Stop chat server", "gui_chat_start_server": "Start chat server", "gui_file_selection_remove_all": "Alles verwijderen", - "gui_remove": "Verwijderen" + "gui_remove": "Verwijderen", + "gui_rendezvous_cleanup": "Wachten op Tor circuits om af te sluiten, om zeker te stellen dat je bestanden succesvol zijn verplaatst\n\nDit kan enkele minuten duren.", + "mode_settings_receive_disable_text_checkbox": "Schakel het versturen van tekst uit", + "mode_settings_receive_disable_files_checkbox": "Schakel uploaden bestanden uit", + "mode_settings_receive_webhook_url_checkbox": "Gebruik notificatie webhook", + "gui_rendezvous_cleanup_quit_early": "Vervroegd afsluiten", + "error_port_not_available": "OnionShare poort is niet beschikbaar", + "history_receive_read_message_button": "Lees bericht", + "gui_chat_url_description": "<b>Iedereen</b> met dit OnionShare adres kan<b>in deze chatkamer aansluiten </b> met de <b>Tor Browser</b>: <img src='{}' />", + "mode_settings_title_label": "Handmatige titel", + "gui_status_indicator_chat_working": "Starten…", + "gui_status_indicator_chat_started": "in gesprek", + "gui_status_indicator_chat_scheduled": "Ingepland…", + "gui_color_mode_changed_notice": "Herstart OnionShare om de nieuwe kleur toe te passen.", + "gui_status_indicator_chat_stopped": "Klaar om te chatten" } diff --git a/desktop/src/onionshare/resources/locale/ru.json b/desktop/src/onionshare/resources/locale/ru.json index 95484e8b..47e7e4d1 100644 --- a/desktop/src/onionshare/resources/locale/ru.json +++ b/desktop/src/onionshare/resources/locale/ru.json @@ -126,7 +126,7 @@ "settings_error_bundled_tor_timeout": "Подключение к Tor занимает слишком много времени. Возможно, отсутствует подключение к сети Интернет, или у вас неточно настроено системное время?", "settings_error_bundled_tor_broken": "Ошибка подключения OnionShare к Tor в фоновом режиме:\n{}", "settings_test_success": "Подключено к контроллеру Tor.\n\nВерсия Tor: {}\nПоддержка временных \"луковых\" сервисов: {}.\nПоддержка аутентификации клиента: {}.\nПоддержка адресов .onion следующего поколения: {}.", - "error_tor_protocol_error": "Ошибка Tor: {}", + "error_tor_protocol_error": "Была обнаружена ошибка Tor: {}", "error_tor_protocol_error_unknown": "Неизвестная ошибка Tor", "error_invalid_private_key": "Этот приватный ключ не поддерживается", "connecting_to_tor": "Подключение к сети Tor", @@ -283,5 +283,14 @@ "gui_rendezvous_cleanup_quit_early": "Выйти Раньше", "gui_rendezvous_cleanup": "Ожидается завершение соединений с сетью Tor для подтверждения успешной отправки ваших файлов.\n\nЭто может занять несколько минут.", "gui_color_mode_changed_notice": "Перезапустите OnionShare чтобы изменения цветовой гаммы вступили в силу.", - "gui_chat_url_description": "<b>Каждый</b> у кого есть этот адрес OnionShare может <b>присоединиться к этому чату</b> при помощи <b>Tor Browser</b>: <img src='{}' />" + "gui_chat_url_description": "<b>Каждый</b> у кого есть этот адрес OnionShare может <b>присоединиться к этому чату</b> при помощи <b>Tor Browser</b>: <img src='{}' />", + "history_receive_read_message_button": "Прочитать сообщение", + "mode_settings_receive_webhook_url_checkbox": "Использовать веб-хук для отправки уведомлений", + "mode_settings_receive_disable_files_checkbox": "Запретить передачу файлов", + "mode_settings_receive_disable_text_checkbox": "Запретить отправку текста", + "mode_settings_title_label": "Собственное название", + "gui_status_indicator_chat_started": "Чат активен", + "gui_status_indicator_chat_scheduled": "По расписанию…", + "gui_status_indicator_chat_working": "Запуск…", + "gui_status_indicator_chat_stopped": "Готов начать чат" } diff --git a/desktop/src/onionshare/resources/locale/tr.json b/desktop/src/onionshare/resources/locale/tr.json index c646594f..9b217970 100644 --- a/desktop/src/onionshare/resources/locale/tr.json +++ b/desktop/src/onionshare/resources/locale/tr.json @@ -263,5 +263,9 @@ "mode_settings_receive_webhook_url_checkbox": "Bildirim web kancası kullan", "mode_settings_receive_disable_files_checkbox": "Dosya yüklemeyi devre dışı bırak", "mode_settings_receive_disable_text_checkbox": "Metin göndermeyi devre dışı bırak", - "mode_settings_title_label": "Özel başlık" + "mode_settings_title_label": "Özel başlık", + "gui_status_indicator_chat_started": "Sohbet ediliyor", + "gui_status_indicator_chat_scheduled": "Zamanlandı…", + "gui_status_indicator_chat_working": "Başlatılıyor…", + "gui_status_indicator_chat_stopped": "Sohbet etmeye hazır" } diff --git a/desktop/src/onionshare/resources/locale/uk.json b/desktop/src/onionshare/resources/locale/uk.json index 316c2dc4..03ea9dfb 100644 --- a/desktop/src/onionshare/resources/locale/uk.json +++ b/desktop/src/onionshare/resources/locale/uk.json @@ -238,5 +238,9 @@ "history_receive_read_message_button": "Читати повідомлення", "mode_settings_receive_disable_files_checkbox": "Вимкнути передавання файлів", "mode_settings_receive_disable_text_checkbox": "Вимкнути надсилання тексту", - "mode_settings_title_label": "Власний заголовок" + "mode_settings_title_label": "Власний заголовок", + "gui_status_indicator_chat_scheduled": "Заплановано…", + "gui_status_indicator_chat_started": "Спілкування", + "gui_status_indicator_chat_working": "Початок…", + "gui_status_indicator_chat_stopped": "Готовий до спілкування" } diff --git a/desktop/tests/gui_base_test.py b/desktop/tests/gui_base_test.py index 3a38ff8e..acaa9739 100644 --- a/desktop/tests/gui_base_test.py +++ b/desktop/tests/gui_base_test.py @@ -465,6 +465,20 @@ class GuiBaseTest(unittest.TestCase): # We should have timed out now self.assertEqual(tab.get_mode().server_status.status, 0) + def hit_405(self, url, expected_resp, data = {}, methods = [] ): + """Test various HTTP methods and the response""" + for method in methods: + if method == "put": + r = requests.put(url, data = data) + if method == "post": + r = requests.post(url, data = data) + if method == "delete": + r = requests.delete(url) + if method == "options": + r = requests.options(url) + self.assertTrue(expected_resp in r.text) + self.assertFalse('Werkzeug' in r.headers) + # Grouped tests follow from here def run_all_common_setup_tests(self): diff --git a/desktop/tests/test_gui_chat.py b/desktop/tests/test_gui_chat.py index 7a19168b..15ecaa44 100644 --- a/desktop/tests/test_gui_chat.py +++ b/desktop/tests/test_gui_chat.py @@ -30,7 +30,7 @@ class TestChat(GuiBaseTest): def change_username(self, tab): """Test that we can change our username""" url = f"http://127.0.0.1:{tab.app.port}/update-session-username" - data = {"username":"oniontest"} + data = {"username": "oniontest"} if tab.settings.get("general", "public"): r = requests.post(url, json=data) else: @@ -47,7 +47,7 @@ class TestChat(GuiBaseTest): self.assertTrue(jsonResponse["success"]) self.assertEqual(jsonResponse["username"], "oniontest") - def run_all_chat_mode_tests(self, tab): + def run_all_chat_mode_started_tests(self, tab): """Tests in chat mode after starting a chat""" self.server_working_on_start_button_pressed(tab) self.server_status_indicator_says_starting(tab) @@ -58,8 +58,9 @@ class TestChat(GuiBaseTest): self.have_copy_url_button(tab) self.have_show_qr_code_button(tab) self.server_status_indicator_says_started(tab) - self.view_chat(tab) - self.change_username(tab) + + def run_all_chat_mode_stopping_tests(self, tab): + """Tests stopping a chat""" self.server_is_stopped(tab) self.web_server_is_stopped(tab) self.server_status_indicator_says_closed(tab) @@ -71,5 +72,27 @@ class TestChat(GuiBaseTest): Test chat mode """ tab = self.new_chat_tab() - self.run_all_chat_mode_tests(tab) + self.run_all_chat_mode_started_tests(tab) + self.view_chat(tab) + self.change_username(tab) + self.run_all_chat_mode_stopping_tests(tab) + self.close_all_tabs() + + def test_405_page_returned_for_invalid_methods(self): + """ + Our custom 405 page should return for invalid methods + """ + tab = self.new_chat_tab() + + tab.get_mode().mode_settings_widget.public_checkbox.click() + + self.run_all_chat_mode_started_tests(tab) + url = f"http://127.0.0.1:{tab.app.port}/" + self.hit_405( + url, + expected_resp="OnionShare: 405 Method Not Allowed", + data={"foo": "bar"}, + methods=["put", "post", "delete", "options"], + ) + self.run_all_chat_mode_stopping_tests(tab) self.close_all_tabs() diff --git a/desktop/tests/test_gui_receive.py b/desktop/tests/test_gui_receive.py index 6e14ae67..b523b0fa 100644 --- a/desktop/tests/test_gui_receive.py +++ b/desktop/tests/test_gui_receive.py @@ -286,3 +286,22 @@ class TestReceive(GuiBaseTest): self.run_all_upload_non_writable_dir_tests(tab) self.close_all_tabs() + + def test_405_page_returned_for_invalid_methods(self): + """ + Our custom 405 page should return for invalid methods + """ + tab = self.new_receive_tab() + + tab.get_mode().mode_settings_widget.public_checkbox.click() + + self.run_all_common_setup_tests() + self.run_all_receive_mode_setup_tests(tab) + self.upload_file(tab, self.tmpfile_test, "test.txt") + url = f"http://127.0.0.1:{tab.app.port}/" + self.hit_405(url, expected_resp="OnionShare: 405 Method Not Allowed", data = {'foo':'bar'}, methods = ["put", "post", "delete", "options"]) + + self.server_is_stopped(tab) + self.web_server_is_stopped(tab) + self.server_status_indicator_says_closed(tab) + self.close_all_tabs() diff --git a/desktop/tests/test_gui_share.py b/desktop/tests/test_gui_share.py index 380d63f6..531e456f 100644 --- a/desktop/tests/test_gui_share.py +++ b/desktop/tests/test_gui_share.py @@ -608,3 +608,20 @@ class TestShare(GuiBaseTest): self.hit_401(tab) self.close_all_tabs() + + def test_405_page_returned_for_invalid_methods(self): + """ + Our custom 405 page should return for invalid methods + """ + tab = self.new_share_tab() + + tab.get_mode().autostop_sharing_checkbox.click() + tab.get_mode().mode_settings_widget.public_checkbox.click() + + self.run_all_common_setup_tests() + self.run_all_share_mode_setup_tests(tab) + self.run_all_share_mode_started_tests(tab) + url = f"http://127.0.0.1:{tab.app.port}/" + self.hit_405(url, expected_resp="OnionShare: 405 Method Not Allowed", data = {'foo':'bar'}, methods = ["put", "post", "delete", "options"]) + self.history_widgets_present(tab) + self.close_all_tabs() diff --git a/desktop/tests/test_gui_website.py b/desktop/tests/test_gui_website.py index a838cb96..f526756a 100644 --- a/desktop/tests/test_gui_website.py +++ b/desktop/tests/test_gui_website.py @@ -99,3 +99,19 @@ class TestWebsite(GuiBaseTest): tab.get_mode().disable_csp_checkbox.click() self.run_all_website_mode_download_tests(tab) self.close_all_tabs() + + def test_405_page_returned_for_invalid_methods(self): + """ + Our custom 405 page should return for invalid methods + """ + tab = self.new_website_tab() + + tab.get_mode().mode_settings_widget.public_checkbox.click() + + self.run_all_common_setup_tests() + self.run_all_website_mode_setup_tests(tab) + self.run_all_website_mode_started_tests(tab) + url = f"http://127.0.0.1:{tab.app.port}/" + self.hit_405(url, expected_resp="OnionShare: 405 Method Not Allowed", data = {'foo':'bar'}, methods = ["put", "post", "delete", "options"]) + + self.close_all_tabs() |