diff options
author | Adolfo Fitoria <adolfo.fitoria@gmail.com> | 2012-10-22 09:41:40 -0600 |
---|---|---|
committer | Adolfo Fitoria <adolfo.fitoria@gmail.com> | 2012-10-22 09:41:40 -0600 |
commit | 780d9e31fb7e42c01c4303f89ac4d53d815de739 (patch) | |
tree | 8343e5ca097123bfc0c025373616dfcb994002d6 | |
parent | 13de1d9100f81ca1b5dc83e43f4e3f6fdd72c261 (diff) | |
parent | 4a7781941ee840f0525bf8bcb77376616f5aec21 (diff) | |
download | askbot-780d9e31fb7e42c01c4303f89ac4d53d815de739.tar.gz askbot-780d9e31fb7e42c01c4303f89ac4d53d815de739.tar.bz2 askbot-780d9e31fb7e42c01c4303f89ac4d53d815de739.zip |
Merge branch 'master' into django1.4
31 files changed, 5891 insertions, 3269 deletions
diff --git a/askbot/askbot b/askbot/askbot deleted file mode 100644 index e69de29b..00000000 --- a/askbot/askbot +++ /dev/null diff --git a/askbot/deps/django_authopenid/util.py b/askbot/deps/django_authopenid/util.py index 9f02050d..8d37b9e5 100644 --- a/askbot/deps/django_authopenid/util.py +++ b/askbot/deps/django_authopenid/util.py @@ -127,9 +127,6 @@ class DjangoOpenIDStore(OpenIDStore): return False - def cleanupNonce(self): - Nonce.objects.filter(timestamp<int(time.time()) - nonce.SKEW).delete() - def cleanupAssociations(self): Association.objects.extra(where=['issued + lifetimeint<(%s)' % time.time()]).delete() @@ -414,7 +411,7 @@ def get_enabled_major_login_providers(): token = oauth.Token(data['oauth_token'], data['oauth_token_secret']) client = oauth.Client(consumer, token=token) url = 'https://identi.ca/api/account/verify_credentials.json' - content = urllib2.urlopen(url).read() + response, content = client.request(url, 'GET') json = simplejson.loads(content) return json['id'] if askbot_settings.IDENTICA_KEY and askbot_settings.IDENTICA_SECRET: diff --git a/askbot/deps/livesettings/views.py b/askbot/deps/livesettings/views.py index 918c6602..d12eb602 100644 --- a/askbot/deps/livesettings/views.py +++ b/askbot/deps/livesettings/views.py @@ -96,6 +96,6 @@ def export_as_python(request): pp = pprint.PrettyPrinter(indent=4) pretty = pp.pformat(work) - return render_to_response('askbot.deps.livesettings/text.txt', { 'text' : pretty }, mimetype='text/plain') + return render_to_response('livesettings/text.txt', { 'text' : pretty }, mimetype='text/plain') export_as_python = never_cache(staff_member_required(export_as_python)) diff --git a/askbot/doc/source/contributors.rst b/askbot/doc/source/contributors.rst index ce8656ea..f6ad51da 100644 --- a/askbot/doc/source/contributors.rst +++ b/askbot/doc/source/contributors.rst @@ -54,6 +54,6 @@ Translations * Pekka Gaiser - German * Pekka Järvinen - Finnish * Adi Robian - Romanian -* Dario Ghilardi, Federico Poloni, `Luca Ferroni <http://www.linkedin.com/in/lucaferroni>`_ - Italian +* `Stefano Mancini <https://github.com/xponrails>`_, Dario Ghilardi, Federico Poloni, `Luca Ferroni <http://www.linkedin.com/in/lucaferroni>`_ - Italian * `Jordi Bofill <https://github.com/jbofill>`_ - Catalan diff --git a/askbot/locale/it/LC_MESSAGES/django.mo b/askbot/locale/it/LC_MESSAGES/django.mo Binary files differindex cb32cbde..32c8c6d8 100644 --- a/askbot/locale/it/LC_MESSAGES/django.mo +++ b/askbot/locale/it/LC_MESSAGES/django.mo diff --git a/askbot/locale/it/LC_MESSAGES/django.po b/askbot/locale/it/LC_MESSAGES/django.po index 6cf0a2c6..c11980d5 100644 --- a/askbot/locale/it/LC_MESSAGES/django.po +++ b/askbot/locale/it/LC_MESSAGES/django.po @@ -6,85 +6,110 @@ msgid "" msgstr "" "Project-Id-Version: 0.7\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-04-18 18:51-0500\n" -"PO-Revision-Date: 2011-11-19 11:27\n" -"Last-Translator: <tapion@pdp.linux.it>\n" +"POT-Creation-Date: 2012-10-10 05:27-0500\n" +"PO-Revision-Date: 2012-10-10 05:30\n" +"Last-Translator: <stefano.mancini@devinterface.com>\n" "Language-Team: LANGUAGE <LL@li.org>\n" -"Language: it\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Language: it\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Translate Toolkit 1.9.0\n" -"X-Translated-Using: django-rosetta 0.5.6\n" +"X-Translated-Using: django-rosetta 0.6.8\n" #: exceptions.py:13 msgid "Sorry, but anonymous visitors cannot access this function" msgstr "Mi spiace, ma devi essere registrato per usare questa funzionalità" -#: feed.py:28 feed.py:90 +#: feed.py:30 feed.py:101 msgid " - " msgstr " - " -#: feed.py:28 +#: feed.py:31 feed.py:102 msgid "Individual question feed" msgstr "Feed di un'unica domanda" -#: feed.py:90 -msgid "latest questions" -msgstr "domande recenti" - -#: forms.py:74 +#: forms.py:137 msgid "select country" msgstr "scegli lo Stato" -#: forms.py:83 +#: forms.py:147 msgid "Country" msgstr "Paese" -#: forms.py:91 +#: forms.py:155 msgid "Country field is required" msgstr "Il campo Stato è obbligatorio" -#: forms.py:104 skins/default/templates/widgets/answer_edit_tips.html:45 -#: skins/default/templates/widgets/answer_edit_tips.html:49 -#: skins/default/templates/widgets/question_edit_tips.html:40 -#: skins/default/templates/widgets/question_edit_tips.html:45 +#: forms.py:185 +#, python-format +msgid "must be > %d word" +msgid_plural "must be > %d words" +msgstr[0] "deve essere > %d parola" +msgstr[1] "deve essere > %d parole" + +#: forms.py:196 +#, python-format +msgid "must be < %d word" +msgid_plural "must be < %d words" +msgstr[0] "deve essere < %d parola" +msgstr[1] "deve essere < %d parole" + +#: forms.py:230 templates/widgets/markdown_help.html:20 +#: templates/widgets/markdown_help.html:24 msgid "title" msgstr "titolo" -#: forms.py:105 +#: forms.py:232 msgid "please enter a descriptive title for your question" msgstr "per favore inserisci un titolo descrittivo per la tua domanda" -#: forms.py:113 -#, fuzzy, python-format +#: forms.py:243 +#, python-format msgid "title must be > %d character" msgid_plural "title must be > %d characters" -msgstr[0] "il titolo deve essere più lungo di 10 caratteri" -msgstr[1] "il titolo deve essere più lungo di 10 caratteri" +msgstr[0] "il titolo deve essere più lungo di %d carattere" +msgstr[1] "il titolo deve essere più lungo di %d caratteri" -#: forms.py:123 +#: forms.py:253 #, python-format msgid "The title is too long, maximum allowed size is %d characters" msgstr "" +"Il titolo è troppo lungo, la massima lunghezza consentita è di %d caratteri " -#: forms.py:130 +#: forms.py:260 #, python-format msgid "The title is too long, maximum allowed size is %d bytes" msgstr "" +"Il titolo è troppo lungo, la massima lunghezza consentita è di %d byte " -#: forms.py:149 +#: forms.py:285 msgid "content" msgstr "contenuto" -#: forms.py:185 skins/common/templates/widgets/edit_post.html:21 -#: skins/default/templates/widgets/meta_nav.html:5 +#: forms.py:332 +#, python-format +msgid "each tag must be shorter than %(max_chars)d character" +msgid_plural "each tag must be shorter than %(max_chars)d characters" +msgstr[0] "ogni tag deve essere più corto di %(max_chars)d carattere" +msgstr[1] "ogni tag deve essere più corto di %(max_chars)d caratteri" + +#: forms.py:369 +msgid "" +"We ran out of space for recording the tags. Please shorten or delete some of" +" them." +msgstr "" +"Siamo a corto di spazio per registrare i tag. Abbrevia o eliminare alcuni di" +" loro." + +#: forms.py:372 forms.py:975 models/widgets.py:27 +#: templates/widgets/edit_post.html:41 templates/widgets/meta_nav.html:6 msgid "tags" msgstr "tag" -#: forms.py:188 -#, fuzzy, python-format +#: forms.py:374 +#, python-format msgid "" "Tags are short keywords, with no spaces within. Up to %(max_tags)d tag can " "be used." @@ -93,57 +118,42 @@ msgid_plural "" "be used." msgstr[0] "" "I tag sono brevi parole chiave, senza spaziature tra una e l'altra. Possono " -"essere inseriti fino a 5 tags." +"essere inseriti fino a %(max_tags)d tags." msgstr[1] "" "I tag sono brevi parole chiave, senza spaziature tra una e l'altra. Possono " -"essere inseriti fino a 5 tags." +"essere inseriti fino a %(max_tags)d tags." -#: forms.py:222 skins/default/templates/question_retag.html:58 -msgid "tags are required" -msgstr "i tag sono obbligatori" - -#: forms.py:232 +#: forms.py:401 #, python-format msgid "please use %(tag_count)d tag or less" msgid_plural "please use %(tag_count)d tags or less" msgstr[0] "per favore usa un numero uguale o inferiore a %(tag_count)d tag" msgstr[1] "per favore usa un numero uguale o inferiore a %(tag_count)d tags" -#: forms.py:240 +#: forms.py:409 #, python-format msgid "At least one of the following tags is required : %(tags)s" msgstr "Devi inserire almeno uno di questi tag: %(tags)s" -#: forms.py:249 -#, python-format -msgid "each tag must be shorter than %(max_chars)d character" -msgid_plural "each tag must be shorter than %(max_chars)d characters" -msgstr[0] "ogni tag deve essere più corto di %(max_chars)d carattere" -msgstr[1] "ogni tag deve essere più corto di %(max_chars)d caratteri" - -#: forms.py:258 -msgid "In tags, please use letters, numbers and characters \"-+.#\"" -msgstr "" - -#: forms.py:294 +#: forms.py:437 msgid "community wiki (karma is not awarded & many others can edit wiki post)" msgstr "" "wiki della comunità (il karma non è ricompensato & molti altri possono " "modificare le pagine del wiki)" -#: forms.py:295 +#: forms.py:441 msgid "" -"if you choose community wiki option, the question and answer do not generate " -"points and name of author will not be shown" +"if you choose community wiki option, the question and answer do not generate" +" points and name of author will not be shown" msgstr "" "se scegli l'opzione 'domanda comunitaria', le domanda e le risposte non " "genereranno punti ed il nome dell'autore non verrà mostrato" -#: forms.py:311 +#: forms.py:468 msgid "update summary:" msgstr "aggiorna il sommario:" -#: forms.py:312 +#: forms.py:470 msgid "" "enter a brief summary of your revision (e.g. fixed spelling, grammar, " "improved style, this field is optional)" @@ -151,111 +161,136 @@ msgstr "" "inserisci una breve descrizione della tua modifica (ad esempio, corretta " "l'ortografia, migliorato lo stile. Questo campo è opzionale)" -#: forms.py:386 +#: forms.py:561 msgid "Enter number of points to add or subtract" msgstr "Inserisci un numero di punti da aggiungere o rimuovere" -#: forms.py:400 const/__init__.py:253 +#: forms.py:576 const/__init__.py:354 msgid "approved" msgstr "approvato" -#: forms.py:401 const/__init__.py:254 +#: forms.py:577 const/__init__.py:355 msgid "watched" msgstr "osservato" -#: forms.py:402 const/__init__.py:255 +#: forms.py:578 const/__init__.py:356 msgid "suspended" msgstr "sospeso" -#: forms.py:403 const/__init__.py:256 +#: forms.py:579 const/__init__.py:357 msgid "blocked" msgstr "bloccato" -#: forms.py:405 +#: forms.py:581 msgid "administrator" msgstr "Amministratore" -#: forms.py:406 const/__init__.py:252 +#: forms.py:582 const/__init__.py:353 msgid "moderator" msgstr "moderatore" -#: forms.py:426 +#: forms.py:601 msgid "Change status to" msgstr "Cambia lo stato a" -#: forms.py:453 +#: forms.py:627 msgid "which one?" msgstr "quale?" -#: forms.py:474 +#: forms.py:648 msgid "Cannot change own status" msgstr "Non è possibile cambiare il proprio stato" -#: forms.py:480 +#: forms.py:654 msgid "Cannot turn other user to moderator" msgstr "Non è possibile rendere moderatore un altro utente" -#: forms.py:487 +#: forms.py:661 msgid "Cannot change status of another moderator" msgstr "Non è possibile cambiare lo stato di un altro moderatore" -#: forms.py:493 +#: forms.py:667 msgid "Cannot change status to admin" msgstr "Non è possibile cambiare il proprio stato ad amministratore" -#: forms.py:499 +#: forms.py:673 #, python-format msgid "" "If you wish to change %(username)s's status, please make a meaningful " "selection." msgstr "" -"Se desideri cambiare lo stato di %(username)s, per piacere fai una selezione " -"sensata." +"Se desideri cambiare lo stato di %(username)s, per piacere fai una selezione" +" sensata." -#: forms.py:508 +#: forms.py:683 msgid "Subject line" msgstr "Oggetto" -#: forms.py:515 +#: forms.py:688 msgid "Message text" msgstr "Messaggio" -#: forms.py:530 -#, fuzzy +#: forms.py:702 msgid "Your name (optional):" -msgstr "Il tuo nome:" +msgstr "Il tuo nome (opzionale):" -#: forms.py:531 -#, fuzzy +#: forms.py:703 msgid "Email:" msgstr "e-mail:" -#: forms.py:533 +#: forms.py:705 msgid "Your message:" msgstr "Il tuo messaggio:" -#: forms.py:538 +#: forms.py:710 msgid "I don't want to give my email or receive a response:" -msgstr "" +msgstr "Non aggiungo la mia mail o ricevo una risposta" -#: forms.py:560 +#: forms.py:733 msgid "Please mark \"I dont want to give my mail\" field." +msgstr "Sei pregato di selezionare il campo \"Non voglio fornire la mia email\"" + +#: forms.py:766 +msgid "keep private within your groups" +msgstr "mantieni privata all'interno dei tuoi gruppi" + +#: forms.py:804 +msgid "User name:" +msgstr "Nome utente:" + +#: forms.py:806 +msgid "Enter name to post on behalf of someone else. Can create new accounts." msgstr "" +"Immettere il nome per postare per conto di qualcun altro. Possibile creare " +"nuovi account." + +#: forms.py:813 +msgid "Email address:" +msgstr "Indirizzo Email:" + +#: forms.py:863 +msgid "User name is required with the email" +msgstr "il nome utente è obbligatorio assieme alla mail" + +#: forms.py:868 +msgid "Email is required if user name is added" +msgstr "L' email è obbligatoria, se il nome utente viene aggiunto" -#: forms.py:599 +#: forms.py:888 forms.py:927 msgid "ask anonymously" -msgstr "chiedi come utente anonimo" +msgstr "pubblica come utente anonimo" -#: forms.py:601 +#: forms.py:890 forms.py:929 msgid "Check if you do not want to reveal your name when asking this question" msgstr "Controlla se non vuoi rivelare il tuo nome quando fai questa domanda" -#: forms.py:624 +#: forms.py:917 msgid "" -"Subject line is expected in the format: [tag1, tag2, tag3,...] question title" -msgstr "" +"Subject line is expected in the format: [tag1, tag2, tag3,...] question " +"title" +msgstr "Il soggeto è atteso nel formato: [tag1, tag2, tag3,...]" -#: forms.py:769 +#: forms.py:1160 msgid "" "You have asked this question anonymously, if you decide to reveal your " "identity, please check this box." @@ -263,11 +298,11 @@ msgstr "" "Hai posto questa domanda in modo anonimo. se decidi di rivelare la tua " "identità, per favore seleziona questo campo." -#: forms.py:773 +#: forms.py:1164 msgid "reveal identity" msgstr "rivela l'identità" -#: forms.py:831 +#: forms.py:1233 msgid "" "Sorry, only owner of the anonymous question can reveal his or her identity, " "please uncheck the box" @@ -275,7 +310,7 @@ msgstr "" "Spiacenti, solo il proprietario della domanda anonima può rivelare la sua " "identità, per favore togli la spunta dal campo" -#: forms.py:844 +#: forms.py:1246 msgid "" "Sorry, apparently rules have just changed - it is no longer possible to ask " "anonymously. Please either check the \"reveal identity\" box or reload this " @@ -285,96 +320,104 @@ msgstr "" "porre domande anonime. Controlla il box \"rivela identità\" oppure ricarica " "questa pagina e prova a modificare la domanda ancora" -#: forms.py:888 +#: forms.py:1309 msgid "Real name" msgstr "Nome reale" -#: forms.py:895 +#: forms.py:1316 msgid "Website" msgstr "Sito web" -#: forms.py:902 +#: forms.py:1323 msgid "City" msgstr "Città" -#: forms.py:911 +#: forms.py:1332 msgid "Show country" msgstr "Mostra paese" -#: forms.py:916 +#: forms.py:1337 +msgid "Show tag choices" +msgstr "Visualizza le etichetta scelte" + +#: forms.py:1342 msgid "Date of birth" msgstr "Data di nascita" -#: forms.py:917 +#: forms.py:1344 msgid "will not be shown, used to calculate age, format: YYYY-MM-DD" msgstr "" "non verrà mostrata, utilizzato per calcolare l'età, formato: YYYY-MM-DD" -#: forms.py:923 +#: forms.py:1352 msgid "Profile" msgstr "Profilo" -#: forms.py:932 +#: forms.py:1361 msgid "Screen name" msgstr "Nome utente" -#: forms.py:963 forms.py:964 +#: forms.py:1394 forms.py:1398 msgid "this email has already been registered, please use another one" msgstr "questa email è già stata registrata, per favore utilizzane un'altra" -#: forms.py:971 +#: forms.py:1407 msgid "Choose email tag filter" msgstr "Scegli il tag filtro per l'email" -#: forms.py:1018 +#: forms.py:1459 msgid "Asked by me" msgstr "Chiesto da me" -#: forms.py:1021 +#: forms.py:1462 msgid "Answered by me" msgstr "Risposta fornita da me" -#: forms.py:1024 +#: forms.py:1465 msgid "Individually selected" msgstr "Selezionato individualmente" -#: forms.py:1027 +#: forms.py:1468 msgid "Entire forum (tag filtered)" msgstr "Tutto il forum (tag filtrati)" -#: forms.py:1031 +#: forms.py:1472 msgid "Comments and posts mentioning me" msgstr "Commenti e post che mi citano" -#: forms.py:1112 +#: forms.py:1556 msgid "please choose one of the options above" msgstr "per favore scegli una delle opzioni soprariportate" -#: forms.py:1115 +#: forms.py:1559 msgid "okay, let's try!" msgstr "okay, proviamo!" -#: forms.py:1118 -#, fuzzy, python-format +#: forms.py:1562 +#, python-format msgid "no %(sitename)s email please, thanks" -msgstr "no askbot email please, thanks" +msgstr "no %(sitename)s email please, thanks" -#: lamson_handlers.py:126 tests/reply_by_email_tests.py:49 -msgid "======= Reply above this line. ====-=-=" -msgstr "" +#: forms.py:1610 templates/reopen.html:7 +msgid "Title" +msgstr "Titolo" -#: lamson_handlers.py:130 -msgid "" -"Your message was malformed. Please make sure to qoute the " -"original notification you received at the end of your reply." -msgstr "" +#: forms.py:1613 templates/groups.html:32 +msgid "Description" +msgstr "Descrizione" -#: lamson_handlers.py:147 -msgid "" -"You were replying to an email address unknown to the system or you " -"were replying from a different address from the one where you " -"received the notification." -msgstr "" +#: tasks.py:67 +msgid "An edit for my answer" +msgstr "Modifica per la mia risposta" + +#: tasks.py:70 +msgid "To add to your post EDIT ABOVE THIS LINE" +msgstr "Per aggiungere al tuo post modifica sopra la linea" + +#: tasks.py:89 +#, python-format +msgid "Your post at %(site_name)s is now published" +msgstr "Il tuo post è stato pubblicato su %(site_name)s" #: urls.py:41 msgid "about/" @@ -390,17 +433,17 @@ msgstr "privacy/" #: urls.py:44 msgid "help/" -msgstr "" +msgstr "guida/" #: urls.py:46 urls.py:51 msgid "answers/" msgstr "risposte/" -#: urls.py:46 urls.py:87 urls.py:212 +#: urls.py:46 urls.py:131 urls.py:349 urls.py:456 msgid "edit/" msgstr "modifica/" -#: urls.py:51 urls.py:117 +#: urls.py:51 urls.py:161 msgid "revisions/" msgstr "revisioni/" @@ -408,95 +451,147 @@ msgstr "revisioni/" msgid "questions" msgstr "domande" -#: urls.py:82 urls.py:87 urls.py:92 urls.py:97 urls.py:102 urls.py:107 -#: urls.py:112 urls.py:117 urls.py:123 urls.py:299 +#: urls.py:126 urls.py:131 urls.py:136 urls.py:141 urls.py:146 urls.py:151 +#: urls.py:156 urls.py:161 urls.py:523 msgid "questions/" msgstr "domande/" -#: urls.py:82 +#: urls.py:126 urls.py:430 urls.py:435 urls.py:440 urls.py:446 msgid "ask/" msgstr "chiedi/" -#: urls.py:92 +#: urls.py:136 msgid "retag/" msgstr "retag/" -#: urls.py:97 +#: urls.py:141 msgid "close/" msgstr "chiudi/" -#: urls.py:102 +#: urls.py:146 msgid "reopen/" msgstr "riapri/" -#: urls.py:107 +#: urls.py:151 msgid "answer/" msgstr "rispondi/" -#: urls.py:112 +#: urls.py:156 msgid "vote/" msgstr "vota/" -#: urls.py:123 -msgid "widgets/" -msgstr "" - -#: urls.py:158 +#: urls.py:212 msgid "tags/" msgstr "tag/" -#: urls.py:201 +#: urls.py:217 +msgid "suggested-tags/" +msgstr "tag-suggeriti/" + +#: urls.py:332 msgid "subscribe-for-tags/" msgstr "iscrivi-per-tag/" -#: urls.py:206 urls.py:212 urls.py:218 urls.py:226 +#: urls.py:337 urls.py:342 urls.py:349 urls.py:355 urls.py:363 msgid "users/" msgstr "utenti/" -#: urls.py:219 +#: urls.py:342 +msgid "by-group/" +msgstr "per-gruppo/" + +#: urls.py:356 msgid "subscriptions/" msgstr "iscrizioni/" -#: urls.py:231 +#: urls.py:368 +msgid "groups/" +msgstr "gruppi/" + +#: urls.py:373 msgid "users/update_has_custom_avatar/" msgstr "utenti/aggiornamenti_ha_avatar_personalizzzato" -#: urls.py:236 urls.py:241 +#: urls.py:378 urls.py:383 msgid "badges/" msgstr "badges/" -#: urls.py:246 +#: urls.py:393 msgid "messages/" msgstr "messaggi/" -#: urls.py:246 +#: urls.py:393 msgid "markread/" msgstr "segnacomeletto/" -#: urls.py:262 +#: urls.py:424 urls.py:430 urls.py:435 urls.py:440 urls.py:446 urls.py:451 +#: urls.py:456 urls.py:461 urls.py:467 +msgid "widgets/" +msgstr "widgets/" + +#: urls.py:446 deps/django_authopenid/urls.py:15 +msgid "complete/" +msgstr "complete/" + +#: urls.py:451 +msgid "create/" +msgstr "crea/" + +#: urls.py:461 +msgid "delete/" +msgstr "cancella/" + +#: urls.py:483 msgid "upload/" msgstr "upload/" -#: urls.py:263 +#: urls.py:484 msgid "feedback/" msgstr "contatti/" -#: urls.py:305 +#: urls.py:529 msgid "question/" msgstr "domanda/" -#: urls.py:312 setup_templates/settings.py:210 -#: skins/common/templates/authopenid/providers_javascript.html:7 +#: urls.py:536 setup_templates/settings.py:214 +#: templates/authopenid/providers_javascript.html:7 msgid "account/" msgstr "account/" #: conf/access_control.py:8 -#, fuzzy msgid "Access control settings" msgstr "Impostazioni base" #: conf/access_control.py:17 msgid "Allow only registered user to access the forum" +msgstr "Solo gli utenti registrati possono accedere al forum" + +#: conf/access_control.py:22 +msgid "nothing - not required" +msgstr "nulla - non necessaria" + +#: conf/access_control.py:23 +msgid "access to content" +msgstr "accedere al contenuto" + +#: conf/access_control.py:34 +msgid "Require valid email for" +msgstr "Richiede una email valida per" + +#: conf/access_control.py:44 +msgid "Allowed email addresses" +msgstr "Indirizzi email consentiti" + +#: conf/access_control.py:45 +msgid "Please use space to separate the entries" +msgstr "Si prega di utilizzare lo spazio per separare le voci" + +#: conf/access_control.py:54 +msgid "Allowed email domain names" +msgstr "" + +#: conf/access_control.py:55 +msgid "Please use space to separate the entries, do not use the @ symbol!" msgstr "" #: conf/badges.py:13 @@ -608,16 +703,14 @@ msgid "Prefix for the email subject line" msgstr "Prefisso per l'oggetto delle email" #: conf/email.py:26 -#, fuzzy msgid "" "This setting takes default from the django settingEMAIL_SUBJECT_PREFIX. A " "value entered here will overridethe default." msgstr "" -"Questa impostazione vengono prese dalle impostazioni predefinite di django " -"EMAIL_SUBJECT_PREFIX. Ail valore inserito quà sovrascriverà il predefinito." +"Queste impostazioni vengono prese dalle impostazioni predefinite di django " +"EMAIL_SUBJECT_PREFIX. Il valore inserito quà sovrascriverà il predefinito." #: conf/email.py:38 -#, fuzzy msgid "Enable email alerts" msgstr "Configurazione email ed avvisi tramite mail" @@ -642,8 +735,8 @@ msgid "" "Option to define frequency of emailed updates for: Question asked by the " "user." msgstr "" -"Opzione per definire la frequenza degli aggiornamenti per email per: Domande " -"chieste dall'utente" +"Opzione per definire la frequenza degli aggiornamenti per email per: Domande" +" chieste dall'utente" #: conf/email.py:85 msgid "Default notification frequency questions answered by the user" @@ -660,8 +753,8 @@ msgstr "" #: conf/email.py:99 msgid "" -"Default notification frequency questions individually " -"selected by the user" +"Default notification frequency questions individually" +" selected by the user" msgstr "" "Frequenza predefinita di aggiornamento per le domande selezionate " "individualmente dall'utente" @@ -698,6 +791,9 @@ msgid "" "command \"send_unanswered_question_reminders\" (for example, via a cron job " "- with an appropriate frequency) " msgstr "" +"Nota: per utilizzare questa funzione, è necessario eseguire la gestione " +"comando \"send_unanswered_question_reminders\" (per esempio, tramite un job " +"di cron - con una frequenza adeguata) " #: conf/email.py:143 msgid "Days before starting to send reminders about unanswered questions" @@ -723,9 +819,12 @@ msgstr "Manda promemoria periodici per accettare la risposta migliore" #: conf/email.py:179 msgid "" "NOTE: in order to use this feature, it is necessary to run the management " -"command \"send_accept_answer_reminders\" (for example, via a cron job - with " -"an appropriate frequency) " +"command \"send_accept_answer_reminders\" (for example, via a cron job - with" +" an appropriate frequency) " msgstr "" +"Nota: per utilizzare questa funzione, è necessario eseguire la gestione " +"comando \"send_accept_answer_reminders\" (per esempio, tramite un job di " +"cron - con una frequenza adeguata) " #: conf/email.py:192 msgid "Days before starting to send reminders to accept an answer" @@ -752,7 +851,8 @@ msgstr "" #: conf/email.py:228 msgid "" "Active email verification is done by sending a verification key in email" -msgstr "La verifica dell'email è effettuata inviando una chiave all'indirizzo " +msgstr "" +"La verifica dell'email è effettuata inviando una chiave all'indirizzo " #: conf/email.py:237 msgid "Allow only one account per email address" @@ -773,8 +873,8 @@ msgstr "Consenti di inviare domande per email" #: conf/email.py:258 msgid "" -"Before enabling this setting - please fill out IMAP settings in the settings." -"py file" +"Before enabling this setting - please fill out IMAP settings in the " +"settings.py file" msgstr "" "Prima di abilitare questa opzione, prima compila le impostazioni IMAP nelle " "impostazioni.file py" @@ -791,23 +891,27 @@ msgstr "" "Queste impostazioni si applicano ai tag scritti nel campo oggetto della " "domanda risoltaper email" -#: conf/email.py:284 -#, fuzzy +#: conf/email.py:282 msgid "Enable posting answers and comments by email" msgstr "Consenti di inviare domande per email" -#: conf/email.py:287 +#: conf/email.py:285 msgid "To enable this feature make sure lamson is running" msgstr "" +"Per abilitare questa funzione essere sicuri che lamson sia in esecuzione" + +#: conf/email.py:296 +msgid "Emailed post: when to notify author about publishing" +msgstr "" -#: conf/email.py:298 +#: conf/email.py:321 msgid "Reply by email hostname" msgstr "" -#: conf/email.py:311 +#: conf/email.py:332 msgid "" -"Email replies having fewer words than this number will be posted as comments " -"instead of answers" +"Email replies having fewer words than this number will be posted as comments" +" instead of answers" msgstr "" #: conf/external_keys.py:11 @@ -821,8 +925,8 @@ msgstr "Site verification key di Google" #: conf/external_keys.py:21 #, python-format msgid "" -"This key helps google index your site please obtain is at <a href=\"%(url)s?" -"hl=%(lang)s\">google webmasters tools site</a>" +"This key helps google index your site please obtain is at <a " +"href=\"%(url)s?hl=%(lang)s\">google webmasters tools site</a>" msgstr "" "Questa chiave aiuta google ad indicizzare il tuo sito. Per favore ottienila " "presso gli <a href=\"%(url)s hl=%(lang)s\">strumenti per i webmaster di " @@ -857,8 +961,8 @@ msgstr "Chiave privata Recaptcha" #, python-format msgid "" "Recaptcha is a tool that helps distinguish real people from annoying spam " -"robots. Please get this and a public key at the <a href=\"%(url)s\">%(url)s</" -"a>" +"robots. Please get this and a public key at the <a " +"href=\"%(url)s\">%(url)s</a>" msgstr "" "Recaptcha è un tool che aiuta a distinguere persone reali da fastidisosi " "spam robots. Per favore ottieni questa ed una chiave pubblica all'indirizzo " @@ -872,8 +976,8 @@ msgstr "Facebook API key" #, python-format msgid "" "Facebook API key and Facebook secret allow to use Facebook Connect login " -"method at your site. Please obtain these keys at <a href=\"%(url)s" -"\">facebook create app</a> site" +"method at your site. Please obtain these keys at <a " +"href=\"%(url)s\">facebook create app</a> site" msgstr "" "La Facebook API key ed il Facebook secret ti permettono di usare Facebook " "Connect per i login al tuo sito. Per favore ottieni queste chiavi presso la " @@ -890,11 +994,11 @@ msgstr "Il codice utente di Twitter" #: conf/external_keys.py:109 #, python-format msgid "" -"Please register your forum at <a href=\"%(url)s\">twitter applications site</" -"a>" +"Please register your forum at <a href=\"%(url)s\">twitter applications " +"site</a>" msgstr "" -"Per favore registra il tuo form a <a href=\"%(url)s\">sito dell'applicazione " -"twitter</a>" +"Per favore registra il tuo form a <a href=\"%(url)s\">sito dell'applicazione" +" twitter</a>" #: conf/external_keys.py:120 msgid "Twitter consumer secret" @@ -907,7 +1011,8 @@ msgstr "Il codice utente di LinkedIn" #: conf/external_keys.py:130 #, python-format msgid "" -"Please register your forum at <a href=\"%(url)s\">LinkedIn developer site</a>" +"Please register your forum at <a href=\"%(url)s\">LinkedIn developer " +"site</a>" msgstr "" "Per favore, registra il tuo form a <a href=\"%(url)s\">sito di sviluppo di " "LinkedIn" @@ -975,36 +1080,40 @@ msgstr "" msgid "Data entry and display rules" msgstr "Impostazioni per la visualizzazione dei dati di Askbot" -#: conf/forum_data_rules.py:21 +#: conf/forum_data_rules.py:27 +msgid "Editor for the posts" +msgstr "" + +#: conf/forum_data_rules.py:36 msgid "Enable embedding videos. " msgstr "" -#: conf/forum_data_rules.py:23 -#, fuzzy, python-format +#: conf/forum_data_rules.py:38 +#, python-format msgid "<em>Note: please read <a href=\"%(url)s\">read this</a> first.</em>" msgstr "" -"Abilita l'inserimento di video. <em>Nota: per favore leggi <a href=" -"\"%(url)s>leggi questo</a> prima </em>" +"Abilita l'inserimento di video. <em>Nota: per favore leggi <a " +"href=\"%(url)s>leggi questo</a> prima </em>" -#: conf/forum_data_rules.py:33 +#: conf/forum_data_rules.py:48 msgid "Check to enable community wiki feature" msgstr "Spunta per impostare come 'domanda comunitaria'" -#: conf/forum_data_rules.py:42 +#: conf/forum_data_rules.py:57 msgid "Allow asking questions anonymously" msgstr "Permetti di rispondere alle domande anonimamente" -#: conf/forum_data_rules.py:44 +#: conf/forum_data_rules.py:59 msgid "" -"Users do not accrue reputation for anonymous questions and their identity is " -"not revealed until they change their mind" +"Users do not accrue reputation for anonymous questions and their identity is" +" not revealed until they change their mind" msgstr "" -#: conf/forum_data_rules.py:56 +#: conf/forum_data_rules.py:71 msgid "Allow posting before logging in" msgstr "Permetti di postare prima del login" -#: conf/forum_data_rules.py:58 +#: conf/forum_data_rules.py:73 msgid "" "Check if you want to allow users start posting questions or answers before " "logging in. Enabling this may require adjustments in the user login system " @@ -1017,86 +1126,109 @@ msgstr "" "utente accede.Il sistema di login integrato in Askbot supporta questa " "funzionalità." -#: conf/forum_data_rules.py:73 +#: conf/forum_data_rules.py:88 msgid "Allow swapping answer with question" msgstr "Consenti di scambiare la domanda con la risposta" -#: conf/forum_data_rules.py:75 +#: conf/forum_data_rules.py:90 msgid "" "This setting will help import data from other forums such as zendesk, when " "automatic data import fails to detect the original question correctly." msgstr "" -"Questa impostazione aiuterà ad importare i dati da altri forum come zendesk, " -"quando l'importazione automatica dei dati non riesce ad identificare " +"Questa impostazione aiuterà ad importare i dati da altri forum come zendesk," +" quando l'importazione automatica dei dati non riesce ad identificare " "correttamente la domanda originale." -#: conf/forum_data_rules.py:87 +#: conf/forum_data_rules.py:102 msgid "Maximum length of tag (number of characters)" msgstr "Massima lunghezza di un tag (numero di caratteri)" -#: conf/forum_data_rules.py:96 -#, fuzzy +#: conf/forum_data_rules.py:111 msgid "Minimum length of title (number of characters)" msgstr "Massima lunghezza di un tag (numero di caratteri)" -#: conf/forum_data_rules.py:106 -#, fuzzy +#: conf/forum_data_rules.py:121 msgid "Minimum length of question body (number of characters)" msgstr "Massima lunghezza di un tag (numero di caratteri)" -#: conf/forum_data_rules.py:117 -#, fuzzy +#: conf/forum_data_rules.py:132 msgid "Minimum length of answer body (number of characters)" msgstr "Massima lunghezza di un tag (numero di caratteri)" -#: conf/forum_data_rules.py:126 -#, fuzzy +#: conf/forum_data_rules.py:143 +msgid "Limit one answer per question per user" +msgstr "Limita una sola risposta per ogni domanda per utente" + +#: conf/forum_data_rules.py:152 msgid "Are tags required?" -msgstr "i tag sono obbligatori" +msgstr "I tag sono obbligatori?" + +#: conf/forum_data_rules.py:162 +msgid "Enable tag moderation" +msgstr "Abilitare la moderazione in tag" -#: conf/forum_data_rules.py:135 +#: conf/forum_data_rules.py:164 +msgid "" +"If enabled, any new tags will not be applied to the questions, but emailed " +"to the moderators. To use this feature, tags must be optional." +msgstr "" + +#: conf/forum_data_rules.py:172 +msgid "category tree" +msgstr "" + +#: conf/forum_data_rules.py:173 +msgid "user input" +msgstr "input dell'utente" + +#: conf/forum_data_rules.py:180 +msgid "Source of tags" +msgstr "Fonte di tag" + +#: conf/forum_data_rules.py:191 msgid "Mandatory tags" msgstr "Tag obbligatori" -#: conf/forum_data_rules.py:138 +#: conf/forum_data_rules.py:194 msgid "" "At least one of these tags will be required for any new or newly edited " "question. A mandatory tag may be wildcard, if the wildcard tags are active." msgstr "" -"Almeno uno di questi tag sarà richiesto per ogni domanda creata o modificata." -"Il tag obbligatorio può essere anche un wildcard, se i tag wilcard sono " -"attivi." +"Almeno uno di questi tag sarà richiesto per ogni domanda creata o " +"modificata.Il tag obbligatorio può essere anche un wildcard, se i tag " +"wilcard sono attivi." -#: conf/forum_data_rules.py:150 +#: conf/forum_data_rules.py:206 msgid "Force lowercase the tags" msgstr "Forza tag con lettere minuscole" -#: conf/forum_data_rules.py:152 +#: conf/forum_data_rules.py:208 msgid "" "Attention: after checking this, please back up the database, and run a " "management command: <code>python manage.py fix_question_tags</code> to " "globally rename the tags" msgstr "" "Attenzione: dopo aver selezionato questa impostazione fai un backup del " -"database ed esegui il comando <code>python manage.py fix_question_tags</" -"code> per aggiornare i tag globalmente" +"database ed esegui il comando <code>python manage.py " +"fix_question_tags</code> per aggiornare i tag globalmente" -#: conf/forum_data_rules.py:166 +#: conf/forum_data_rules.py:222 msgid "Format of tag list" msgstr "Formato della lista dei tag" -#: conf/forum_data_rules.py:168 +#: conf/forum_data_rules.py:224 msgid "" -"Select the format to show tags in, either as a simple list, or as a tag cloud" +"Select the format to show tags in, either as a simple list, or as a tag " +"cloud" msgstr "" "Seleziona il formato con cui mostrare i tag: lista semplice o come una " "nuvola di tag" -#: conf/forum_data_rules.py:180 +#: conf/forum_data_rules.py:236 msgid "Use wildcard tags" msgstr "Usa tag multipli" -#: conf/forum_data_rules.py:182 +#: conf/forum_data_rules.py:238 msgid "" "Wildcard tags can be used to follow or ignore many tags at once, a valid " "wildcard tag has a single wildcard at the very end" @@ -1104,49 +1236,79 @@ msgstr "" "I tag wildcards possono essere usati per selezionare o ignorare più tag " "insieme, un tag wildcard valido ha una wildcard singola alla fine" -#: conf/forum_data_rules.py:195 +#: conf/forum_data_rules.py:250 +msgid "Use separate set for subscribed tags" +msgstr "" + +#: conf/forum_data_rules.py:252 +msgid "" +"If enabled, users will have a third set of tag selections - \"subscribed\" " +"(by email) in additon to \"interesting\" and \"ignored\"" +msgstr "" + +#: conf/forum_data_rules.py:260 +msgid "Always, for all users" +msgstr "" + +#: conf/forum_data_rules.py:261 +msgid "Never, for all users" +msgstr "" + +#: conf/forum_data_rules.py:262 +msgid "Let users decide" +msgstr "" + +#: conf/forum_data_rules.py:270 +msgid "Publicly show user tag selections" +msgstr "" + +#: conf/forum_data_rules.py:279 +msgid "Enable separate tag search box on main page" +msgstr "" + +#: conf/forum_data_rules.py:289 msgid "Default max number of comments to display under posts" msgstr "Numero massimo di commenti da mostrare sotto il post" -#: conf/forum_data_rules.py:206 +#: conf/forum_data_rules.py:300 #, python-format msgid "Maximum comment length, must be < %(max_len)s" msgstr "La lunghezza massima del commento deve essere < %(max_len)s" -#: conf/forum_data_rules.py:216 +#: conf/forum_data_rules.py:310 msgid "Limit time to edit comments" msgstr "Limita il tempo per modificare i commenti" -#: conf/forum_data_rules.py:218 +#: conf/forum_data_rules.py:312 msgid "If unchecked, there will be no time limit to edit the comments" msgstr "" "Se non selezionato, non ci sarà un limite di tempo per modificare i commenti" -#: conf/forum_data_rules.py:229 +#: conf/forum_data_rules.py:323 msgid "Minutes allowed to edit a comment" msgstr "Minuti concessi per modificare un commento" -#: conf/forum_data_rules.py:230 +#: conf/forum_data_rules.py:324 msgid "To enable this setting, check the previous one" msgstr "Per abilitare questa impostazione devi selezionare la precedente" -#: conf/forum_data_rules.py:239 +#: conf/forum_data_rules.py:333 msgid "Save comment by pressing <Enter> key" msgstr "Salva i commenti premendo <Enter>" -#: conf/forum_data_rules.py:248 +#: conf/forum_data_rules.py:342 msgid "Minimum length of search term for Ajax search" msgstr "Lunghezza minima dei termini di ricerca per la ricerca Ajax" -#: conf/forum_data_rules.py:249 +#: conf/forum_data_rules.py:343 msgid "Must match the corresponding database backend setting" msgstr "Deve corrispondere all'analoga impostazione backend del database" -#: conf/forum_data_rules.py:258 +#: conf/forum_data_rules.py:352 msgid "Do not make text query sticky in search" msgstr "Non rendere il campo di ricerca adesivo" -#: conf/forum_data_rules.py:260 +#: conf/forum_data_rules.py:354 msgid "" "Check to disable the \"sticky\" behavior of the search query. This may be " "useful if you want to move the search bar away from the default position or " @@ -1157,18 +1319,66 @@ msgstr "" "sua posizione predefinita o non ti piace il comportamento adesivo " "predefinito della barra di ricerca." -#: conf/forum_data_rules.py:273 +#: conf/forum_data_rules.py:367 msgid "Maximum number of tags per question" msgstr "Massimo numero di tag per domanda" -#: conf/forum_data_rules.py:285 +#: conf/forum_data_rules.py:379 msgid "Number of questions to list by default" msgstr "Numero di domande da mostrare di default" -#: conf/forum_data_rules.py:295 +#: conf/forum_data_rules.py:389 msgid "What should \"unanswered question\" mean?" msgstr "Cosa dovrebbe significare \"domande senza risposta\"?" +#: conf/group_settings.py:9 +msgid "Group settings" +msgstr "Impostazioni del gruppo" + +#: conf/group_settings.py:18 +msgid "Enable user groups" +msgstr "" + +#: conf/group_settings.py:40 +msgid "everyone" +msgstr "" + +#: conf/group_settings.py:41 +msgid "Global user group name" +msgstr "Nome utente globale del gruppo" + +#: conf/group_settings.py:42 +msgid "All users belong to this group automatically" +msgstr "" + +#: conf/group_settings.py:52 +msgid "Enable group email adddresses" +msgstr "Abilitare il gruppo di indirizzi email" + +#: conf/group_settings.py:54 +msgid "If selected, users can post to groups by email \"group-name@domain.com\"" +msgstr "" + +#: conf/karma_and_badges_visibility.py:12 +msgid "Karma & Badge visibility" +msgstr "" + +#: conf/karma_and_badges_visibility.py:27 +msgid "Visibility of karma" +msgstr "" + +#: conf/karma_and_badges_visibility.py:30 +msgid "User's karma may be shown publicly or only to the owners" +msgstr "" + +#: conf/karma_and_badges_visibility.py:44 +msgid "Visibility of badges" +msgstr "" + +#: conf/karma_and_badges_visibility.py:47 +msgid "Badges can be either publicly shown or completely hidden" +msgstr "" + #: conf/ldap.py:9 msgid "LDAP login configuration" msgstr "" @@ -1178,40 +1388,134 @@ msgid "Use LDAP authentication for the password login" msgstr "Usa l'autenticazione LDAP per le passwird " #: conf/ldap.py:26 +msgid "Automatically create user accounts when possible" +msgstr "" + +#: conf/ldap.py:29 +msgid "" +"Potentially reduces number of steps in the registration process but can " +"expose personal information, e.g. when LDAP login name is the same as email " +"address or real name." +msgstr "" + +#: conf/ldap.py:37 +msgid "Version 3" +msgstr "" + +#: conf/ldap.py:38 +msgid "Version 2 (insecure and deprecated)!!!" +msgstr "" + +#: conf/ldap.py:47 +msgid "LDAP protocol version" +msgstr "" + +#: conf/ldap.py:49 +msgid "" +"Note that Version 2 protocol is not secure!!! Do not use it on unprotected " +"network." +msgstr "" + +#: conf/ldap.py:59 msgid "LDAP URL" msgstr "" -#: conf/ldap.py:35 -msgid "LDAP BASE DN" +#: conf/ldap.py:68 +msgid "LDAP encoding" msgstr "" -#: conf/ldap.py:43 -msgid "LDAP Search Scope" +#: conf/ldap.py:71 +msgid "" +"This value in almost all cases is \"utf-8\". Change it if yours is " +"different. This field is required" msgstr "" -#: conf/ldap.py:52 -#, fuzzy -msgid "LDAP Server USERID field name" -msgstr "Nome utente del provider LDAP" +#: conf/ldap.py:82 +msgid "Base DN (distinguished name)" +msgstr "" -#: conf/ldap.py:61 -msgid "LDAP Server \"Common Name\" field name" +#: conf/ldap.py:85 +msgid "" +"Usually base DN mirrors domain name of your organization, e.g. " +"\"dn=example,dn=com\" when your site url is \"example.com\".This value is " +"the \"root\" address of your LDAP directory." +msgstr "" + +#: conf/ldap.py:96 +msgid "User search filter template" +msgstr "" + +#: conf/ldap.py:99 +msgid "" +"Python string format template, must have two string placeholders, which " +"should be left in the intact format. First placeholder will be used for the " +"user id field name, and the second - for the user id value. The template can" +" be extended to match schema of your LDAP directory." msgstr "" -#: conf/ldap.py:70 -#, fuzzy +#: conf/ldap.py:113 +msgid "UserID/login field" +msgstr "Campo UserID/login" + +#: conf/ldap.py:116 +msgid "" +"This field is required. For Microsoft Active Directory this value usually is" +" \"sAMAccountName\"." +msgstr "" + +#: conf/ldap.py:127 +msgid "\"Common Name\" field" +msgstr "" + +#: conf/ldap.py:129 +msgid "" +"Common name is a formal or informal name of a person, can be blank. Use it " +"only if surname and given names are not available." +msgstr "" + +#: conf/ldap.py:139 +msgid "First name, Last name" +msgstr "" + +#: conf/ldap.py:140 +msgid "Last name, First name" +msgstr "" + +#: conf/ldap.py:147 +msgid "\"Common Name\" field format" +msgstr "" + +#: conf/ldap.py:150 +msgid "Use this only if \"Common Name\" field is used." +msgstr "" + +#: conf/ldap.py:158 +msgid "Given (First) name" +msgstr "" + +#: conf/ldap.py:160 conf/ldap.py:170 +msgid "This field can be blank" +msgstr "" + +#: conf/ldap.py:168 +msgid "Surname (last) name" +msgstr "" + +#: conf/ldap.py:178 msgid "LDAP Server EMAIL field name" msgstr "Nome utente del provider LDAP" +#: conf/ldap.py:180 +msgid "This field is required" +msgstr "Questo campo è obbligatorio" + #: conf/leading_sidebar.py:12 -#, fuzzy msgid "Common left sidebar" msgstr "Pagina delle domande nella barra laterale" #: conf/leading_sidebar.py:20 -#, fuzzy msgid "Enable left sidebar" -msgstr "Profilo utente" +msgstr "Abilita la barra laterale" #: conf/leading_sidebar.py:29 msgid "HTML for the left sidebar" @@ -1225,9 +1529,8 @@ msgid "" msgstr "" #: conf/license.py:13 -#, fuzzy msgid "Content License" -msgstr "Contenuto LicensaContenuto Licensa" +msgstr "Contenuto Licenza" #: conf/license.py:21 msgid "Show license clause in the site footer" @@ -1270,8 +1573,7 @@ msgid "Login provider setings" msgstr "Impostazioni del login" #: conf/login_providers.py:22 -msgid "" -"Show alternative login provider buttons on the password \"Sign Up\" page" +msgid "Show alternative login provider buttons on the password \"Sign Up\" page" msgstr "Mostra un bottone alternativo per il login nella pagina \"Iscriviti\"" #: conf/login_providers.py:31 @@ -1292,11 +1594,11 @@ msgstr "" #: conf/login_providers.py:50 msgid "" -"Fill it with the wordpress url to the xml-rpc, normally http://mysite.com/" -"xmlrpc.php" +"Fill it with the wordpress url to the xml-rpc, normally " +"http://mysite.com/xmlrpc.php" msgstr "" -"Inserisci l'url dell'xml-rpc di wordpress, di solito questo è http://miosito." -"com/xmlrpc.php" +"Inserisci l'url dell'xml-rpc di wordpress, di solito questo è " +"http://miosito.com/xmlrpc.php" #: conf/login_providers.py:51 msgid "" @@ -1334,8 +1636,8 @@ msgstr "Abilita Markdown che supporta il codice" #: conf/markup.py:43 msgid "" -"If checked, underscore characters will not trigger italic or bold formatting " -"- bold and italic text can still be marked up with asterisks. Note that " +"If checked, underscore characters will not trigger italic or bold formatting" +" - bold and italic text can still be marked up with asterisks. Note that " "\"MathJax support\" implicitly turns this feature on, because underscores " "are heavily used in LaTeX input." msgstr "" @@ -1368,8 +1670,8 @@ msgstr "" #: conf/markup.py:93 msgid "" -"If you enable this feature, the application will be able to detect patterns " -"and auto link to URLs" +"If you enable this feature, the application will be able to detect patterns" +" and auto link to URLs" msgstr "" #: conf/markup.py:106 @@ -1393,8 +1695,8 @@ msgstr "" msgid "" "Here, please enter url templates for the patterns entered in the previous " "setting, also one entry per line. <strong>Make sure that number of lines in " -"this setting and the previous one are the same</strong> For example template " -"https://bugzilla.redhat.com/show_bug.cgi?id=\\1 together with the pattern " +"this setting and the previous one are the same</strong> For example template" +" https://bugzilla.redhat.com/show_bug.cgi?id=\\1 together with the pattern " "shown above and the entry in the post #123 will produce link to the bug 123 " "in the redhat bug tracker." msgstr "" @@ -1420,71 +1722,93 @@ msgid "Accept own answer" msgstr "Accetta la tua riposta" #: conf/minimum_reputation.py:58 +msgid "Accept any answer" +msgstr "Accetta qualsiasi riposta" + +#: conf/minimum_reputation.py:67 msgid "Flag offensive" msgstr "Segnalare come inappropriato" -#: conf/minimum_reputation.py:67 +#: conf/minimum_reputation.py:76 msgid "Leave comments" msgstr "Lasciare commenti" -#: conf/minimum_reputation.py:76 +#: conf/minimum_reputation.py:85 msgid "Delete comments posted by others" msgstr "Cancellare commenti inviati da altri" -#: conf/minimum_reputation.py:85 +#: conf/minimum_reputation.py:94 msgid "Delete questions and answers posted by others" msgstr "Cancellare domande e risposte inviate da altri" -#: conf/minimum_reputation.py:94 +#: conf/minimum_reputation.py:103 msgid "Upload files" msgstr "Caricare files" -#: conf/minimum_reputation.py:103 +#: conf/minimum_reputation.py:112 msgid "Close own questions" msgstr "Chiudere le proprie domande" -#: conf/minimum_reputation.py:112 +#: conf/minimum_reputation.py:121 msgid "Retag questions posted by other people" msgstr "Ritaggare domande inviate da altri utenti" -#: conf/minimum_reputation.py:121 +#: conf/minimum_reputation.py:130 msgid "Reopen own questions" msgstr "Riaprire le proprie domande" -#: conf/minimum_reputation.py:130 +#: conf/minimum_reputation.py:139 msgid "Edit community wiki posts" msgstr "Modificare le domande comunitarie" -#: conf/minimum_reputation.py:139 +#: conf/minimum_reputation.py:148 msgid "Edit posts authored by other people" msgstr "Modificare i post scritti da altri utenti" -#: conf/minimum_reputation.py:148 +#: conf/minimum_reputation.py:157 msgid "View offensive flags" msgstr "Visualizzare i flag inappropriati" -#: conf/minimum_reputation.py:157 +#: conf/minimum_reputation.py:166 msgid "Close questions asked by others" msgstr "Chiudere domande poste da altri" -#: conf/minimum_reputation.py:166 +#: conf/minimum_reputation.py:175 msgid "Lock posts" msgstr "Bloccare posts" -#: conf/minimum_reputation.py:175 +#: conf/minimum_reputation.py:184 msgid "Remove rel=nofollow from own homepage" msgstr "" -#: conf/minimum_reputation.py:177 +#: conf/minimum_reputation.py:186 msgid "" "When a search engine crawler will see a rel=nofollow attribute on a link - " "the link will not count towards the rank of the users personal site." msgstr "" -#: conf/minimum_reputation.py:190 +#: conf/minimum_reputation.py:198 msgid "Post answers and comments by email" msgstr "" +#: conf/minimum_reputation.py:207 +msgid "Trigger email notifications" +msgstr "" + +#: conf/minimum_reputation.py:209 +msgid "" +"Reduces spam as notifications wont't be sent to regular users for posts of " +"low karma users" +msgstr "" + +#: conf/moderation.py:19 +msgid "Content moderation" +msgstr "Moderazione di contenuti" + +#: conf/moderation.py:28 +msgid "Enable content moderation" +msgstr "" + #: conf/reputation_changes.py:13 msgid "Karma loss and gain rules" msgstr "Regole relative all'ottenimento e cessione di punti reputazione" @@ -1560,12 +1884,11 @@ msgid "Main page sidebar" msgstr "" #: conf/sidebar_main.py:20 conf/sidebar_profile.py:20 -#: conf/sidebar_question.py:19 +#: conf/sidebar_question.py:33 msgid "Custom sidebar header" msgstr "" #: conf/sidebar_main.py:23 conf/sidebar_profile.py:23 -#: conf/sidebar_question.py:22 msgid "" "Use this area to enter content at the TOP of the sidebarin HTML format. " "When using this option (as well as the sidebar footer), please use the HTML " @@ -1605,17 +1928,17 @@ msgid "" msgstr "" #: conf/sidebar_main.py:85 conf/sidebar_profile.py:36 -#: conf/sidebar_question.py:75 +#: conf/sidebar_question.py:89 msgid "Custom sidebar footer" msgstr "" #: conf/sidebar_main.py:88 conf/sidebar_profile.py:39 -#: conf/sidebar_question.py:78 +#: conf/sidebar_question.py:92 msgid "" -"Use this area to enter content at the BOTTOM of the sidebarin HTML format. " -"When using this option (as well as the sidebar header), please use the HTML " -"validation service to make sure that your input is valid and works well in " -"all browsers." +"Use this area to enter content at the BOTTOM of the sidebarin HTML format." +" When using this option (as well as the sidebar header), please use the " +"HTML validation service to make sure that your input is valid and works well" +" in all browsers." msgstr "" #: conf/sidebar_profile.py:12 @@ -1623,32 +1946,50 @@ msgid "User profile sidebar" msgstr "Profilo utente" #: conf/sidebar_question.py:11 -msgid "Question page sidebar" +msgid "Question page banners and sidebar" msgstr "Pagina delle domande nella barra laterale" -#: conf/sidebar_question.py:35 +#: conf/sidebar_question.py:19 +msgid "Top banner" +msgstr "" + +#: conf/sidebar_question.py:22 +msgid "" +"When using this option, please use the HTML validation service to make sure " +"that your input is valid and works well in all browsers." +msgstr "" + +#: conf/sidebar_question.py:36 +msgid "" +"Use this area to enter content at the TOP of the sidebarin HTML format. When" +" using this option (as well as the sidebar footer), please use the HTML " +"validation service to make sure that your input is valid and works well in " +"all browsers." +msgstr "" + +#: conf/sidebar_question.py:49 msgid "Show tag list in sidebar" msgstr "" -#: conf/sidebar_question.py:37 +#: conf/sidebar_question.py:51 msgid "Uncheck this if you want to hide the tag list from the sidebar " msgstr "" -#: conf/sidebar_question.py:48 +#: conf/sidebar_question.py:62 msgid "Show meta information in sidebar" msgstr "" -#: conf/sidebar_question.py:50 +#: conf/sidebar_question.py:64 msgid "" "Uncheck this if you want to hide the meta information about the question " "(post date, views, last updated). " msgstr "" -#: conf/sidebar_question.py:62 +#: conf/sidebar_question.py:76 msgid "Show related questions in sidebar" msgstr "Mostra domande simili nella barra laterale" -#: conf/sidebar_question.py:64 +#: conf/sidebar_question.py:78 msgid "Uncheck this if you want to hide the list of related questions. " msgstr "" "Non selezionare questa impostazione se vuoi nascondere la lista di domande " @@ -1659,15 +2000,15 @@ msgid "Bootstrap mode" msgstr "" #: conf/site_modes.py:74 -msgid "Activate a \"Bootstrap\" mode" +msgid "Activate a \"Large site\" mode" msgstr "" #: conf/site_modes.py:76 msgid "" -"Bootstrap mode lowers reputation and certain badge thresholds, to values, " -"more suitable for the smaller communities, <strong>WARNING:</strong> your " -"current value for Minimum reputation, Bagde Settings and Vote Rules will be " -"changed after you modify this setting." +"\"Large site\" mode increases reputation and certain badge thresholds, to " +"values, more suitable for the larger communities, <strong>WARNING:</strong> " +"your current values for Minimum reputation, Badge Settings and Vote Rules " +"will be changed after you modify this setting." msgstr "" #: conf/site_settings.py:12 @@ -1718,117 +2059,8 @@ msgstr "URL di un sito esterno per i contatti" msgid "If left empty, a simple internal feedback form will be used instead" msgstr "Se lasciato vuoto, verrà usata una pagina interna per i contatti" -#: conf/skin_counter_settings.py:11 -msgid "Skin: view, vote and answer counters" -msgstr "Skin: contatori per consultazioni, voti e risposte" - -#: conf/skin_counter_settings.py:19 -msgid "Vote counter value to give \"full color\"" -msgstr "Numero di voti necessari per utilizzare il \"colore pieno\"" - -#: conf/skin_counter_settings.py:29 -msgid "Background color for votes = 0" -msgstr "colore di sfondo quando non ci sono voti" - -#: conf/skin_counter_settings.py:30 conf/skin_counter_settings.py:41 -#: conf/skin_counter_settings.py:52 conf/skin_counter_settings.py:62 -#: conf/skin_counter_settings.py:72 conf/skin_counter_settings.py:85 -#: conf/skin_counter_settings.py:106 conf/skin_counter_settings.py:117 -#: conf/skin_counter_settings.py:128 conf/skin_counter_settings.py:138 -#: conf/skin_counter_settings.py:148 conf/skin_counter_settings.py:163 -#: conf/skin_counter_settings.py:186 conf/skin_counter_settings.py:196 -#: conf/skin_counter_settings.py:206 conf/skin_counter_settings.py:216 -#: conf/skin_counter_settings.py:228 conf/skin_counter_settings.py:239 -#: conf/skin_counter_settings.py:252 conf/skin_counter_settings.py:262 -msgid "HTML color name or hex value" -msgstr "Nome del colore HTML o valore esadecimale" - -#: conf/skin_counter_settings.py:40 -msgid "Foreground color for votes = 0" -msgstr "Colore del testo per le domande senza voti" - -#: conf/skin_counter_settings.py:51 -msgid "Background color for votes" -msgstr "Colore di sfondo per le domande con voti" - -#: conf/skin_counter_settings.py:61 -msgid "Foreground color for votes" -msgstr "Colore del testo per le domande con voti" - -#: conf/skin_counter_settings.py:71 -msgid "Background color for votes = MAX" -msgstr "Colore di sfondo per le domande con il massimo numero di voti" - -#: conf/skin_counter_settings.py:84 -msgid "Foreground color for votes = MAX" -msgstr "Colore del testo per le domande con il massimo numero di voti" - -#: conf/skin_counter_settings.py:95 -msgid "View counter value to give \"full color\"" -msgstr "Numero di consultazioni necessarie per utilizzare il \"colore pieno\"" - -#: conf/skin_counter_settings.py:105 -msgid "Background color for views = 0" -msgstr "Colore di sfondo per le domande senza consultazioni" - -#: conf/skin_counter_settings.py:116 -msgid "Foreground color for views = 0" -msgstr "Colore del testo per le domande senza consultazioni" - -#: conf/skin_counter_settings.py:127 -msgid "Background color for views" -msgstr "Colore di sfondo per le domande con consultazioni" - -#: conf/skin_counter_settings.py:137 -msgid "Foreground color for views" -msgstr "Colore del testo per le domande con consultazioni" - -#: conf/skin_counter_settings.py:147 -msgid "Background color for views = MAX" -msgstr "Colore di sfondo per le domande con il massimo numero di consultazioni" - -#: conf/skin_counter_settings.py:162 -msgid "Foreground color for views = MAX" -msgstr "Colore del testo per le domande con il massimo numero di consultazioni" - -#: conf/skin_counter_settings.py:173 -msgid "Answer counter value to give \"full color\"" -msgstr "Numero di risposte necessarie per utilizzare il \"colore pieno\"" - -#: conf/skin_counter_settings.py:185 -msgid "Background color for answers = 0" -msgstr "Colore di sfondo per le domande senza risposte" - -#: conf/skin_counter_settings.py:195 -msgid "Foreground color for answers = 0" -msgstr "Colore del testo per le domande senza risposte" - -#: conf/skin_counter_settings.py:205 -msgid "Background color for answers" -msgstr "Colore di sfondo per le domande con risposte" - -#: conf/skin_counter_settings.py:215 -msgid "Foreground color for answers" -msgstr "Colore del testo per le domande con risposte" - -#: conf/skin_counter_settings.py:227 -msgid "Background color for answers = MAX" -msgstr "Colore di sfondo per le domande con il massimo numero di risposte" - -#: conf/skin_counter_settings.py:238 -msgid "Foreground color for answers = MAX" -msgstr "Colore del testo per le domande con il massimo numero di risposte" - -#: conf/skin_counter_settings.py:251 -msgid "Background color for accepted" -msgstr "Colore di sfondo per le domande con una <risposta accettata" - -#: conf/skin_counter_settings.py:261 -msgid "Foreground color for accepted answer" -msgstr "Colore del testo per le domande con una <risposta accettata" - #: conf/skin_general_settings.py:15 -msgid "Logos and HTML <head> parts" +msgid "Skin, logos and HTML <head> parts" msgstr "" #: conf/skin_general_settings.py:23 @@ -1840,104 +2072,188 @@ msgid "To change the logo, select new file, then submit this whole form." msgstr "" "Per cambiare il logo, seleziona il nuovo file, poi salva le impostazioni" +#: conf/skin_general_settings.py:34 +msgid "English" +msgstr "" + +#: conf/skin_general_settings.py:35 +msgid "Spanish" +msgstr "" + +#: conf/skin_general_settings.py:36 +msgid "Catalan" +msgstr "" + #: conf/skin_general_settings.py:37 -msgid "Show logo" +msgid "German" +msgstr "" + +#: conf/skin_general_settings.py:38 +msgid "Greek" msgstr "" #: conf/skin_general_settings.py:39 +msgid "Finnish" +msgstr "" + +#: conf/skin_general_settings.py:40 +msgid "French" +msgstr "" + +#: conf/skin_general_settings.py:41 +msgid "Hindi" +msgstr "" + +#: conf/skin_general_settings.py:42 +msgid "Hungarian" +msgstr "" + +#: conf/skin_general_settings.py:43 +msgid "Italian" +msgstr "" + +#: conf/skin_general_settings.py:44 +msgid "Japanese" +msgstr "" + +#: conf/skin_general_settings.py:45 +msgid "Korean" +msgstr "" + +#: conf/skin_general_settings.py:46 +msgid "Portuguese" +msgstr "" + +#: conf/skin_general_settings.py:47 +msgid "Brazilian Portuguese" +msgstr "" + +#: conf/skin_general_settings.py:48 +msgid "Romanian" +msgstr "" + +#: conf/skin_general_settings.py:49 +msgid "Russian" +msgstr "" + +#: conf/skin_general_settings.py:50 +msgid "Serbian" +msgstr "" + +#: conf/skin_general_settings.py:51 +msgid "Turkish" +msgstr "" + +#: conf/skin_general_settings.py:52 +msgid "Vietnamese" +msgstr "" + +#: conf/skin_general_settings.py:53 +msgid "Chinese" +msgstr "" + +#: conf/skin_general_settings.py:54 +msgid "Chinese (Taiwan)" +msgstr "" + +#: conf/skin_general_settings.py:73 +msgid "Show logo" +msgstr "" + +#: conf/skin_general_settings.py:75 msgid "" "Check if you want to show logo in the forum header or uncheck in the case " "you do not want the logo to appear in the default location" msgstr "" -#: conf/skin_general_settings.py:51 +#: conf/skin_general_settings.py:87 msgid "Site favicon" msgstr "" -#: conf/skin_general_settings.py:53 +#: conf/skin_general_settings.py:89 #, python-format msgid "" -"A small 16x16 or 32x32 pixel icon image used to distinguish your site in the " -"browser user interface. Please find more information about favicon at <a " +"A small 16x16 or 32x32 pixel icon image used to distinguish your site in the" +" browser user interface. Please find more information about favicon at <a " "href=\"%(favicon_info_url)s\">this page</a>." msgstr "" -#: conf/skin_general_settings.py:69 +#: conf/skin_general_settings.py:105 msgid "Password login button" msgstr "" -#: conf/skin_general_settings.py:71 +#: conf/skin_general_settings.py:107 msgid "" -"An 88x38 pixel image that is used on the login screen for the password login " -"button." +"An 88x38 pixel image that is used on the login screen for the password login" +" button." msgstr "" -#: conf/skin_general_settings.py:84 +#: conf/skin_general_settings.py:120 msgid "Show all UI functions to all users" msgstr "Mostra tutte le funzionalità a tutti gli utenti" -#: conf/skin_general_settings.py:86 +#: conf/skin_general_settings.py:122 msgid "" "If checked, all forum functions will be shown to users, regardless of their " -"reputation. However to use those functions, moderation rules, reputation and " -"other limits will still apply." +"reputation. However to use those functions, moderation rules, reputation and" +" other limits will still apply." msgstr "" "Se selezionato, tutte le funzionalità del forum verranno mostrate agli " "utenti, anche se non hanno reputazione sufficiente per utilizzarle. In ogni " "caso, i vincoli di reputazione necessari per utilizzarle rimangono validi." -#: conf/skin_general_settings.py:101 +#: conf/skin_general_settings.py:137 msgid "Select skin" msgstr "Scegli skin" -#: conf/skin_general_settings.py:112 +#: conf/skin_general_settings.py:148 msgid "Customize HTML <HEAD>" msgstr "" -#: conf/skin_general_settings.py:121 +#: conf/skin_general_settings.py:157 msgid "Custom portion of the HTML <HEAD>" msgstr "" -#: conf/skin_general_settings.py:123 +#: conf/skin_general_settings.py:159 msgid "" "<strong>To use this option</strong>, check \"Customize HTML <HEAD>\" " "above. Contents of this box will be inserted into the <HEAD> portion " -"of the HTML output, where elements such as <script>, <link>, <" -"meta> may be added. Please, keep in mind that adding external javascript " -"to the <HEAD> is not recommended because it slows loading of the " -"pages. Instead, it will be more efficient to place links to the javascript " -"files into the footer. <strong>Note:</strong> if you do use this setting, " -"please test the site with the W3C HTML validator service." +"of the HTML output, where elements such as <script>, <link>, " +"<meta> may be added. Please, keep in mind that adding external " +"javascript to the <HEAD> is not recommended because it slows loading " +"of the pages. Instead, it will be more efficient to place links to the " +"javascript files into the footer. <strong>Note:</strong> if you do use this " +"setting, please test the site with the W3C HTML validator service." msgstr "" -#: conf/skin_general_settings.py:145 +#: conf/skin_general_settings.py:181 msgid "Custom header additions" msgstr "" -#: conf/skin_general_settings.py:147 +#: conf/skin_general_settings.py:183 msgid "" -"Header is the bar at the top of the content that contains user info and site " -"links, and is common to all pages. Use this area to enter contents of the " +"Header is the bar at the top of the content that contains user info and site" +" links, and is common to all pages. Use this area to enter contents of the " "headerin the HTML format. When customizing the site header (as well as " "footer and the HTML <HEAD>), use the HTML validation service to make " "sure that your input is valid and works well in all browsers." msgstr "" -#: conf/skin_general_settings.py:162 +#: conf/skin_general_settings.py:198 msgid "Site footer mode" msgstr "" -#: conf/skin_general_settings.py:164 +#: conf/skin_general_settings.py:200 msgid "" "Footer is the bottom portion of the content, which is common to all pages. " "You can disable, customize, or use the default footer." msgstr "" -#: conf/skin_general_settings.py:181 +#: conf/skin_general_settings.py:217 msgid "Custom footer (HTML format)" msgstr "" -#: conf/skin_general_settings.py:183 +#: conf/skin_general_settings.py:219 msgid "" "<strong>To enable this function</strong>, please select option 'customize' " "in the \"Site footer mode\" above. Use this area to enter contents of the " @@ -1946,65 +2262,65 @@ msgid "" "that your input is valid and works well in all browsers." msgstr "" -#: conf/skin_general_settings.py:198 +#: conf/skin_general_settings.py:234 msgid "Apply custom style sheet (CSS)" msgstr "" -#: conf/skin_general_settings.py:200 +#: conf/skin_general_settings.py:236 msgid "" "Check if you want to change appearance of your form by adding custom style " "sheet rules (please see the next item)" msgstr "" -#: conf/skin_general_settings.py:212 +#: conf/skin_general_settings.py:248 msgid "Custom style sheet (CSS)" msgstr "" -#: conf/skin_general_settings.py:214 +#: conf/skin_general_settings.py:250 msgid "" "<strong>To use this function</strong>, check \"Apply custom style sheet\" " "option above. The CSS rules added in this window will be applied after the " -"default style sheet rules. The custom style sheet will be served dynamically " -"at url \"<forum url>/custom.css\", where the \"<forum url> part " -"depends (default is empty string) on the url configuration in your urls.py." +"default style sheet rules. The custom style sheet will be served dynamically" +" at url \"<forum url>/custom.css\", where the \"<forum url> part" +" depends (default is empty string) on the url configuration in your urls.py." msgstr "" -#: conf/skin_general_settings.py:230 +#: conf/skin_general_settings.py:266 msgid "Add custom javascript" msgstr "" -#: conf/skin_general_settings.py:233 +#: conf/skin_general_settings.py:269 msgid "Check to enable javascript that you can enter in the next field" msgstr "" -#: conf/skin_general_settings.py:243 +#: conf/skin_general_settings.py:279 msgid "Custom javascript" msgstr "" -#: conf/skin_general_settings.py:245 +#: conf/skin_general_settings.py:281 msgid "" -"Type or paste plain javascript that you would like to run on your site. Link " -"to the script will be inserted at the bottom of the HTML output and will be " -"served at the url \"<forum url>/custom.js\". Please, bear in mind that " -"your javascript code may break other functionalities of the site and that " -"the behavior may not be consistent across different browsers (<strong>to " -"enable your custom code</strong>, check \"Add custom javascript\" option " -"above)." +"Type or paste plain javascript that you would like to run on your site. Link" +" to the script will be inserted at the bottom of the HTML output and will be" +" served at the url \"<forum url>/custom.js\". Please, bear in mind " +"that your javascript code may break other functionalities of the site and " +"that the behavior may not be consistent across different browsers " +"(<strong>to enable your custom code</strong>, check \"Add custom " +"javascript\" option above)." msgstr "" -#: conf/skin_general_settings.py:263 +#: conf/skin_general_settings.py:299 msgid "Skin media revision number" msgstr "Numero di revisione dei media della skin" -#: conf/skin_general_settings.py:265 +#: conf/skin_general_settings.py:301 msgid "Will be set automatically but you can modify it if necessary." msgstr "" -#: conf/skin_general_settings.py:276 +#: conf/skin_general_settings.py:312 msgid "Hash to update the media revision number automatically." msgstr "" -#: conf/skin_general_settings.py:280 +#: conf/skin_general_settings.py:316 msgid "Will be set automatically, it is not necesary to modify manually." msgstr "" @@ -2074,69 +2390,90 @@ msgid "User settings" msgstr "Impostazioni degli utenti" #: conf/user_settings.py:23 +msgid "On-screen greeting shown to the new users" +msgstr "Testo mostrato nel benvenuto agli utenti anonimi" + +#: conf/user_settings.py:32 +msgid "Allow anonymous users send feedback" +msgstr "Permettere agli utenti anonimi di inviare feedback" + +#: conf/user_settings.py:41 msgid "Allow editing user screen name" msgstr "Permetti di modificare il nome utente visualizzato" -#: conf/user_settings.py:32 -#, fuzzy +#: conf/user_settings.py:50 +msgid "Auto-fill user name, email, etc on registration" +msgstr "" + +#: conf/user_settings.py:51 +msgid "Implemented only for LDAP logins at this point" +msgstr "" + +#: conf/user_settings.py:60 msgid "Allow users change own email addresses" -msgstr "Consenti solo un account per indirizzo email" +msgstr "Consentire agli utenti di modificare il proprio indirizzo email" -#: conf/user_settings.py:41 +#: conf/user_settings.py:69 +msgid "Allow email address in user name" +msgstr "Permettere indirizzi email nel nome utente" + +#: conf/user_settings.py:78 msgid "Allow account recovery by email" msgstr "Consenti il recupero dell'account per email" -#: conf/user_settings.py:50 +#: conf/user_settings.py:87 msgid "Allow adding and removing login methods" msgstr "" -#: conf/user_settings.py:60 +#: conf/user_settings.py:97 msgid "Minimum allowed length for screen name" msgstr "Lunghezza minima per il nome utente visualizzato" -#: conf/user_settings.py:68 -#, fuzzy +#: conf/user_settings.py:105 msgid "Default avatar for users" -msgstr "Valore predefinito: %s" +msgstr "Avatar predefinito per gli utenti" -#: conf/user_settings.py:70 -#, fuzzy +#: conf/user_settings.py:107 msgid "" "To change the avatar image, select new file, then submit this whole form." msgstr "" "Per cambiare il logo, seleziona il nuovo file, poi salva le impostazioni" -#: conf/user_settings.py:83 +#: conf/user_settings.py:120 msgid "Use automatic avatars from gravatar.com" msgstr "" -#: conf/user_settings.py:85 +#: conf/user_settings.py:122 msgid "" "Check this option if you want to allow the use of gravatar.com for avatars. " "Please, note that this feature might take about 10 minutes to become fully " "effective. You will have to enable uploaded avatars as well. For more " -"information, please visit <a href=\"http://askbot.org/doc/optional-modules." -"html#uploaded-avatars\">this page</a>." +"information, please visit <a href=\"http://askbot.org/doc/optional-" +"modules.html#uploaded-avatars\">this page</a>." msgstr "" -#: conf/user_settings.py:97 +#: conf/user_settings.py:134 msgid "Default Gravatar icon type" -msgstr "" +msgstr "Tipo di icona Gravatar predefinita" -#: conf/user_settings.py:99 +#: conf/user_settings.py:136 msgid "" "This option allows you to set the default avatar type for email addresses " "without associated gravatar images. For more information, please visit <a " "href=\"http://en.gravatar.com/site/implement/images/\">this page</a>." msgstr "" +"Questa opzione consente di impostare il tipo di avatar di default per gli " +"indirizzi e-mail senza immagini gravatar associati. Per ulteriori " +"informazioni, visita <a " +"href=\"http://en.gravatar.com/site/implement/images/\"> questa pagina</a>." -#: conf/user_settings.py:109 +#: conf/user_settings.py:146 msgid "Name for the Anonymous user" msgstr "Nome per gli utenti anonimi" #: conf/vote_rules.py:14 msgid "Vote and flag limits" -msgstr "" +msgstr "Limiti di voto e flag" #: conf/vote_rules.py:24 msgid "Number of votes a user can cast per day" @@ -2177,328 +2514,383 @@ msgid "" "Minimum days to accept an answer, if it has not been accepted by the " "question poster" msgstr "" +"Giorni minimi per accettare una risposta, se non è stata accettata dal " +"creatore della domanda" -#: conf/widgets.py:13 -msgid "Embeddable widgets" -msgstr "" - -#: conf/widgets.py:25 -#, fuzzy -msgid "Number of questions to show" -msgstr "Numero di domande da mostrare di default" - -#: conf/widgets.py:28 -msgid "" -"To embed the widget, add the following code to your site (and fill in " -"correct base url, preferred tags, width and height):<iframe src=" -"\"{{base_url}}/widgets/questions?tags={{comma-separated-tags}}\" width=\"100%" -"\" height=\"300\"scrolling=\"no\"><p>Your browser does not support iframes.</" -"p></iframe>" -msgstr "" - -#: conf/widgets.py:73 -#, fuzzy -msgid "CSS for the questions widget" -msgstr "Chiudi la domanda" - -#: conf/widgets.py:81 -#, fuzzy -msgid "Header for the questions widget" -msgstr "nascondi le domande ignorate" - -#: conf/widgets.py:90 -#, fuzzy -msgid "Footer for the questions widget" -msgstr "domande preferite" - -#: const/__init__.py:10 +#: const/__init__.py:11 msgid "duplicate question" msgstr "la domanda è già stata posta" -#: const/__init__.py:11 +#: const/__init__.py:12 msgid "question is off-topic or not relevant" msgstr "la domanda è off-topic o non rilevante" -#: const/__init__.py:12 +#: const/__init__.py:13 msgid "too subjective and argumentative" msgstr "troppo soggettiva e polemica" -#: const/__init__.py:13 +#: const/__init__.py:14 msgid "not a real question" msgstr "non è una domanda" -#: const/__init__.py:14 +#: const/__init__.py:15 msgid "the question is answered, right answer was accepted" msgstr "" "la domanda è già stata posta e una risposta corretta è stata accettata." -#: const/__init__.py:15 +#: const/__init__.py:16 msgid "question is not relevant or outdated" msgstr "la domanda non è pertinente o è obsoleta" -#: const/__init__.py:16 +#: const/__init__.py:17 msgid "question contains offensive or malicious remarks" msgstr "la domanda contiene commenti offensivi o maligni" -#: const/__init__.py:17 +#: const/__init__.py:18 msgid "spam or advertising" msgstr "spam o pubblicità" -#: const/__init__.py:18 +#: const/__init__.py:19 msgid "too localized" msgstr "troppo specifica" -#: const/__init__.py:43 -#: skins/default/templates/question/answer_tab_bar.html:18 +#: const/__init__.py:45 templates/question/answer_tab_bar.html:18 msgid "newest" msgstr "più recenti" -#: const/__init__.py:44 skins/default/templates/users.html:27 -#: skins/default/templates/question/answer_tab_bar.html:15 +#: const/__init__.py:46 templates/users.html:50 +#: templates/question/answer_tab_bar.html:15 msgid "oldest" msgstr "meno recenti" -#: const/__init__.py:45 +#: const/__init__.py:47 msgid "active" msgstr "attive" -#: const/__init__.py:46 +#: const/__init__.py:48 msgid "inactive" msgstr "inattive" -#: const/__init__.py:47 +#: const/__init__.py:49 msgid "hottest" msgstr "più attive" -#: const/__init__.py:48 +#: const/__init__.py:50 msgid "coldest" msgstr "meno attive" -#: const/__init__.py:49 -#: skins/default/templates/question/answer_tab_bar.html:21 +#: const/__init__.py:51 templates/question/answer_tab_bar.html:21 msgid "most voted" msgstr "più votate" -#: const/__init__.py:50 +#: const/__init__.py:52 msgid "least voted" msgstr "meno votate" -#: const/__init__.py:51 +#: const/__init__.py:53 msgid "relevance" msgstr "rilevanza" -#: const/__init__.py:63 -#: skins/default/templates/user_profile/user_inbox.html:50 -#: skins/default/templates/user_profile/user_inbox.html:62 +#: const/__init__.py:65 +msgid "Never" +msgstr "Mai" + +#: const/__init__.py:66 +msgid "When new post is published" +msgstr "Quando viene pubblicato il nuovo post" + +#: const/__init__.py:67 +msgid "When post is published or revised" +msgstr "Quando il post è pubblicato o rivisto" + +#: const/__init__.py:99 +#, python-format +msgid "" +"Note: to reply with a comment, please use <a " +"href=\"mailto:%(addr)s?subject=%(subject)s\">this link</a>" +msgstr "" +"Nota: per rispondere con un commento, si prega di utilizzare <a " +"href=\"mailto:%(addr)s?subject=%(subject)s\">questo link</a>" + +#: const/__init__.py:113 templates/user_inbox/responses_and_flags.html:9 msgid "all" msgstr "tutte" -#: const/__init__.py:64 +#: const/__init__.py:114 msgid "unanswered" msgstr "senza risposta" -#: const/__init__.py:65 +#: const/__init__.py:115 msgid "favorite" msgstr "preferite" -#: const/__init__.py:70 +#: const/__init__.py:120 msgid "list" msgstr "lista" -#: const/__init__.py:71 +#: const/__init__.py:121 msgid "cloud" -msgstr "" +msgstr "cloud" -#: const/__init__.py:79 +#: const/__init__.py:129 msgid "Question has no answers" msgstr "La domanda non ha risposte" -#: const/__init__.py:80 +#: const/__init__.py:130 msgid "Question has no accepted answers" msgstr "La domanda non ha risposte accettate" -#: const/__init__.py:125 +#: const/__init__.py:186 msgid "asked a question" msgstr "ha posto una domanda" -#: const/__init__.py:126 +#: const/__init__.py:187 msgid "answered a question" msgstr "ha risposto a una domanda" -#: const/__init__.py:127 const/__init__.py:203 +#: const/__init__.py:188 const/__init__.py:292 msgid "commented question" msgstr "ha commentato una domanda" -#: const/__init__.py:128 const/__init__.py:204 +#: const/__init__.py:189 const/__init__.py:293 msgid "commented answer" msgstr "ha commentato una risposta" -#: const/__init__.py:129 +#: const/__init__.py:190 msgid "edited question" msgstr "ha modificato una domanda" -#: const/__init__.py:130 +#: const/__init__.py:191 msgid "edited answer" msgstr "ha modificato una risposta" -#: const/__init__.py:131 -#, fuzzy +#: const/__init__.py:192 msgid "received badge" msgstr "ha ricevuto una medaglia" -#: const/__init__.py:132 +#: const/__init__.py:193 msgid "marked best answer" msgstr "ha accettato una risposta" -#: const/__init__.py:133 +#: const/__init__.py:194 msgid "upvoted" msgstr "ha dato un voto positivo" -#: const/__init__.py:134 +#: const/__init__.py:195 msgid "downvoted" msgstr "ha dato un voto positivo" -#: const/__init__.py:135 +#: const/__init__.py:196 msgid "canceled vote" msgstr "ha annullato un voto" -#: const/__init__.py:136 +#: const/__init__.py:197 msgid "deleted question" msgstr "ha cancellato una domanda" -#: const/__init__.py:137 +#: const/__init__.py:198 msgid "deleted answer" msgstr "ha cancellato una risposta" -#: const/__init__.py:138 +#: const/__init__.py:199 msgid "marked offensive" msgstr "ha segnalato come inappropriata" -#: const/__init__.py:139 +#: const/__init__.py:200 msgid "updated tags" msgstr "ha aggiornato i tag" -#: const/__init__.py:140 +#: const/__init__.py:201 msgid "selected favorite" msgstr "ha scelto un tag preferito" -#: const/__init__.py:141 +#: const/__init__.py:202 msgid "completed user profile" msgstr "ha completato il suo profilo utente" -#: const/__init__.py:142 +#: const/__init__.py:203 msgid "email update sent to user" msgstr "aggiornamento via mail inviato all'utente" -#: const/__init__.py:145 +#: const/__init__.py:204 +msgid "a post was shared" +msgstr "un post è stato condiviso" + +#: const/__init__.py:207 msgid "reminder about unanswered questions sent" msgstr "notifica le domande inviate che non hanno avuto risposta" -#: const/__init__.py:149 +#: const/__init__.py:211 msgid "reminder about accepting the best answer sent" msgstr "notifica quando la risposta viene considerata la migliore" -#: const/__init__.py:151 +#: const/__init__.py:213 msgid "mentioned in the post" msgstr "menzionato nel post" -#: const/__init__.py:202 -#, fuzzy +#: const/__init__.py:216 +msgid "created tag description" +msgstr "descrizione tag creato" + +#: const/__init__.py:220 +msgid "updated tag description" +msgstr "descrizione aggiornata tag" + +#: const/__init__.py:222 +msgid "made a new post" +msgstr "creato un nuovo post" + +#: const/__init__.py:225 +msgid "made an edit" +msgstr "ha effettuato una modifica" + +#: const/__init__.py:229 +msgid "created post reject reason" +msgstr "motivo di rifiuto del post creato" + +#: const/__init__.py:233 +msgid "updated post reject reason" +msgstr "motivo di rifiuto del post aggiornato" + +#: const/__init__.py:291 msgid "answered question" msgstr "ha risposto a una domanda" -#: const/__init__.py:205 -#, fuzzy +#: const/__init__.py:294 msgid "accepted answer" msgstr "ha modificato una risposta" -#: const/__init__.py:209 +#: const/__init__.py:298 msgid "[closed]" msgstr "[chiusa]" -#: const/__init__.py:210 +#: const/__init__.py:299 msgid "[deleted]" msgstr "[cancellata]" -#: const/__init__.py:211 views/readers.py:566 +#: const/__init__.py:300 views/readers.py:612 msgid "initial version" msgstr "versione iniziale" -#: const/__init__.py:212 +#: const/__init__.py:301 msgid "retagged" msgstr "ritaggata" -#: const/__init__.py:220 -msgid "off" -msgstr "" +#: const/__init__.py:302 +msgid "[private]" +msgstr "[privato]" -#: const/__init__.py:221 -msgid "exclude ignored" +#: const/__init__.py:311 +msgid "show all tags" +msgstr "mostra tutti i tag" + +#: const/__init__.py:312 const/__init__.py:322 +msgid "exclude ignored tags" msgstr "escludi gli ignorati" -#: const/__init__.py:222 -msgid "only selected" -msgstr "unico selezionato" +#: const/__init__.py:313 +msgid "only interesting tags" +msgstr "solo tag interessanti" + +#: const/__init__.py:317 const/__init__.py:323 +msgid "only subscribed tags" +msgstr "solo tag sottoscritti" -#: const/__init__.py:226 +#: const/__init__.py:321 +msgid "email for all tags" +msgstr "e-mail per tutti i tag" + +#: const/__init__.py:327 msgid "instantly" -msgstr "immediatamente" +msgstr "subito" -#: const/__init__.py:227 +#: const/__init__.py:328 msgid "daily" msgstr "ogni giorno" -#: const/__init__.py:228 +#: const/__init__.py:329 msgid "weekly" msgstr "ogni settimana" -#: const/__init__.py:229 +#: const/__init__.py:330 msgid "no email" msgstr "mai" -#: const/__init__.py:236 +#: const/__init__.py:337 msgid "identicon" -msgstr "" +msgstr "identicon" -#: const/__init__.py:237 +#: const/__init__.py:338 msgid "mystery-man" msgstr "mystery-man" -#: const/__init__.py:238 +#: const/__init__.py:339 msgid "monsterid" -msgstr "" +msgstr "monsterid" -#: const/__init__.py:239 +#: const/__init__.py:340 msgid "wavatar" msgstr "wavatar" -#: const/__init__.py:240 +#: const/__init__.py:341 msgid "retro" -msgstr "" +msgstr "retro" -#: const/__init__.py:287 skins/default/templates/badges.html:38 +#: const/__init__.py:388 templates/badges.html:38 msgid "gold" msgstr "oro" -#: const/__init__.py:288 skins/default/templates/badges.html:48 +#: const/__init__.py:389 templates/badges.html:48 msgid "silver" msgstr "argento" -#: const/__init__.py:289 skins/default/templates/badges.html:55 +#: const/__init__.py:390 templates/badges.html:55 msgid "bronze" msgstr "bronzo" -#: const/__init__.py:301 +#: const/__init__.py:402 msgid "None" -msgstr "" +msgstr "Nessuno" -#: const/__init__.py:302 +#: const/__init__.py:403 msgid "Gravatar" -msgstr "" +msgstr "Gravatar" -#: const/__init__.py:303 +#: const/__init__.py:404 msgid "Uploaded Avatar" -msgstr "" +msgstr "Avatar caricato" + +#: const/__init__.py:408 +msgid "date descendant" +msgstr "data discendente" + +#: const/__init__.py:409 +msgid "date ascendant" +msgstr "data acendente" + +#: const/__init__.py:410 +msgid "activity descendant" +msgstr "attività discendente" + +#: const/__init__.py:411 +msgid "activity ascendant" +msgstr "attività ascendenti" + +#: const/__init__.py:412 +msgid "answers descendant" +msgstr "risposte discendenti" + +#: const/__init__.py:413 +msgid "answers ascendant" +msgstr "risposte ascendenti" + +#: const/__init__.py:414 +msgid "votes descendant" +msgstr "voti discendenti" + +#: const/__init__.py:415 +msgid "votes ascendant" +msgstr "voti ascendenti" #: const/message_keys.py:21 msgid "most relevant questions" @@ -2560,27 +2952,56 @@ msgstr "per voti" msgid "click to see most voted questions" msgstr "clicca qui per vedere le domande più votate" -#: const/message_keys.py:40 +#: const/message_keys.py:36 models/tag.py:324 +msgid "interesting" +msgstr "interessanti" + +#: const/message_keys.py:37 models/tag.py:325 +msgid "ignored" +msgstr "ignorate" + +#: const/message_keys.py:38 models/tag.py:326 +msgid "subscribed" +msgstr "sottoscritto" + +#: const/message_keys.py:39 templates/question_retag.html:58 +msgid "tags are required" +msgstr "i tag sono obbligatori" + +#: const/message_keys.py:41 +msgid "please use letters, numbers and characters \"-+.#\"" +msgstr "prego usa lettere numeri ed i caratteri \"-+.#\"" + +#: const/message_keys.py:47 msgid "" "Sorry, your account appears to be blocked and you cannot make new posts " "until this issue is resolved. Please contact the forum administrator to " "reach a resolution." msgstr "" +"Siamo spiacenti ma il tua account sembra essere bloccato e non puoi creare " +"nuovi post fintanto che il problema non è stato risolto. Sei pregato di " +"contattare l'amministratore del forum per trovare una soluzione. " -#: const/message_keys.py:45 models/__init__.py:788 +#: const/message_keys.py:52 models/__init__.py:999 msgid "" "Sorry, your account appears to be suspended and you cannot make new posts " "until this issue is resolved. You can, however edit your existing posts. " "Please contact the forum administrator to reach a resolution." msgstr "" +"Siamo spiacenti ma il tua account sembra essere stato sospeso e non puoi " +"creare nuovi post fintanto che il problema non è stato risolto. Puoi " +"comunque modificare i tuoi post esistenti. Sei pregato di contattare " +"l'amministratore per trovare una soluzione." -#: deps/django_authopenid/backends.py:166 +#: deps/django_authopenid/backends.py:99 msgid "" "Welcome! Please set email address (important!) in your profile and adjust " "screen name, if necessary." msgstr "" +"Benvenuto! Se pregato di impostare un indirizzo email (importante!) nel tuo " +"profilo e si impostare se necessario il tuo nome che apparirà a video." -#: deps/django_authopenid/forms.py:110 deps/django_authopenid/views.py:142 +#: deps/django_authopenid/forms.py:110 deps/django_authopenid/views.py:201 msgid "i-names are not supported" msgstr "i-names non sono supportati" @@ -2608,7 +3029,7 @@ msgstr "Le password non corrispondono" #: deps/django_authopenid/forms.py:297 #, python-format msgid "Please choose password > %(len)s characters" -msgstr "" +msgstr "Prego scegliere una password > %(len)s caratteri" #: deps/django_authopenid/forms.py:335 msgid "Current password" @@ -2624,238 +3045,257 @@ msgstr "" #: deps/django_authopenid/forms.py:399 msgid "Sorry, we don't have this email address in the database" -msgstr "" +msgstr "Siamo spiacenti ma non abbiamo questa mail nel database" #: deps/django_authopenid/forms.py:435 msgid "Your user name (<i>required</i>)" msgstr "Il tuo username (<i>required</i>)" #: deps/django_authopenid/forms.py:450 -#, fuzzy msgid "sorry, there is no such user name" -msgstr "mi spiace, questo nome utente è già in uso" +msgstr "mi spiace, questo nome non esiste" -#: deps/django_authopenid/urls.py:9 deps/django_authopenid/urls.py:12 -#: deps/django_authopenid/urls.py:15 setup_templates/settings.py:210 +#: deps/django_authopenid/urls.py:9 deps/django_authopenid/urls.py:15 +#: deps/django_authopenid/urls.py:18 setup_templates/settings.py:214 msgid "signin/" msgstr "signin/" #: deps/django_authopenid/urls.py:10 +msgid "widget/signin/" +msgstr "widget/signin/" + +#: deps/django_authopenid/urls.py:13 msgid "signout/" msgstr "signout/" -#: deps/django_authopenid/urls.py:12 -msgid "complete/" -msgstr "complete/" - -#: deps/django_authopenid/urls.py:15 +#: deps/django_authopenid/urls.py:18 msgid "complete-oauth/" msgstr "complete-oauth/" -#: deps/django_authopenid/urls.py:19 +#: deps/django_authopenid/urls.py:22 msgid "register/" msgstr "registrati/" -#: deps/django_authopenid/urls.py:21 +#: deps/django_authopenid/urls.py:24 msgid "signup/" msgstr "signup/" -#: deps/django_authopenid/urls.py:25 +#: deps/django_authopenid/urls.py:28 msgid "logout/" msgstr "logout/" -#: deps/django_authopenid/urls.py:30 +#: deps/django_authopenid/urls.py:33 msgid "recover/" msgstr "recupera/" -#: deps/django_authopenid/util.py:378 +#: deps/django_authopenid/urls.py:35 +msgid "verify-email/" +msgstr "verifica-email/" + +#: deps/django_authopenid/util.py:380 #, python-format msgid "%(site)s user name and password" -msgstr "Per favore inserisci username e password di %(site)s" +msgstr "username e password di %(site)s" -#: deps/django_authopenid/util.py:384 -#: skins/common/templates/authopenid/signin.html:115 +#: deps/django_authopenid/util.py:386 templates/authopenid/signin.html:120 +#: templates/authopenid/widget_signin.html:120 msgid "Create a password-protected account" -msgstr "" +msgstr "Crea un account protetto da password" -#: deps/django_authopenid/util.py:385 +#: deps/django_authopenid/util.py:387 msgid "Change your password" msgstr "Cambia password" -#: deps/django_authopenid/util.py:473 +#: deps/django_authopenid/util.py:476 msgid "Sign in with Yahoo" -msgstr "" +msgstr "Accedi con Yahoo" -#: deps/django_authopenid/util.py:480 +#: deps/django_authopenid/util.py:483 msgid "AOL screen name" msgstr "Nome utente" -#: deps/django_authopenid/util.py:488 +#: deps/django_authopenid/util.py:491 msgid "OpenID url" msgstr "url OpenID:" -#: deps/django_authopenid/util.py:517 +#: deps/django_authopenid/util.py:520 msgid "Flickr user name" msgstr "nome utente Flickr" -#: deps/django_authopenid/util.py:525 +#: deps/django_authopenid/util.py:528 msgid "Technorati user name" msgstr "nome utente di Technorati" -#: deps/django_authopenid/util.py:533 +#: deps/django_authopenid/util.py:536 msgid "WordPress blog name" -msgstr "" +msgstr "Nome blog WordPress" -#: deps/django_authopenid/util.py:541 +#: deps/django_authopenid/util.py:544 msgid "Blogger blog name" -msgstr "" +msgstr "Nome blog di Blogger" -#: deps/django_authopenid/util.py:549 +#: deps/django_authopenid/util.py:552 msgid "LiveJournal blog name" -msgstr "" +msgstr "Nome blog di LiveJournal" -#: deps/django_authopenid/util.py:557 +#: deps/django_authopenid/util.py:560 msgid "ClaimID user name" msgstr "nome utente di ClaimID" -#: deps/django_authopenid/util.py:565 +#: deps/django_authopenid/util.py:568 msgid "Vidoop user name" msgstr "nome utente di Vidoop" -#: deps/django_authopenid/util.py:573 +#: deps/django_authopenid/util.py:576 msgid "Verisign user name" msgstr "nome utente Verisign" -#: deps/django_authopenid/util.py:608 +#: deps/django_authopenid/util.py:611 #, python-format msgid "Change your %(provider)s password" msgstr "Cambia password di %(provider)s" -#: deps/django_authopenid/util.py:612 +#: deps/django_authopenid/util.py:615 #, python-format msgid "Click to see if your %(provider)s signin still works for %(site_name)s" msgstr "" +"Clicca per accedere con %(provider)s in %(site_name)s" -#: deps/django_authopenid/util.py:621 +#: deps/django_authopenid/util.py:624 #, python-format msgid "Create password for %(provider)s" -msgstr "" +msgstr "Crea una password per %(provider)s" -#: deps/django_authopenid/util.py:625 +#: deps/django_authopenid/util.py:628 #, python-format msgid "Connect your %(provider)s account to %(site_name)s" msgstr "Collega il tuo account %(provider)s per %(site_name)s" -#: deps/django_authopenid/util.py:634 -#, fuzzy, python-format +#: deps/django_authopenid/util.py:637 +#, python-format msgid "Signin with %(provider)s user name and password" -msgstr "Per favore inserisci username e password" +msgstr "Per favore inserisci username e password di %(provider)s" -#: deps/django_authopenid/util.py:641 +#: deps/django_authopenid/util.py:644 #, python-format msgid "Sign in with your %(provider)s account" -msgstr "" +msgstr "Accedi con il tuo account di %(provider)s" -#: deps/django_authopenid/views.py:149 +#: deps/django_authopenid/views.py:208 #, python-format msgid "OpenID %(openid_url)s is invalid" msgstr "L'OpenID %(openid_url)s non è valido" -#: deps/django_authopenid/views.py:261 deps/django_authopenid/views.py:408 -#: deps/django_authopenid/views.py:436 +#: deps/django_authopenid/views.py:320 deps/django_authopenid/views.py:499 +#: deps/django_authopenid/views.py:527 #, python-format msgid "" "Unfortunately, there was some problem when connecting to %(provider)s, " "please try again or use another provider" msgstr "" +"Sfortunatamente, ci sono stati alcuni problemi nella connessione con " +"%(provider)s; sei pregato di riprovare o di usare un altro provider" -#: deps/django_authopenid/views.py:358 +#: deps/django_authopenid/views.py:449 msgid "Your new password saved" msgstr "Nuova password salvata" -#: deps/django_authopenid/views.py:462 +#: deps/django_authopenid/views.py:553 msgid "The login password combination was not correct" -msgstr "" +msgstr "La combinazione login password non è corretta" -#: deps/django_authopenid/views.py:564 +#: deps/django_authopenid/views.py:657 msgid "Please click any of the icons below to sign in" -msgstr "" +msgstr "Sei pregato di cliccare su una delle icone sotto per accedere" -#: deps/django_authopenid/views.py:566 +#: deps/django_authopenid/views.py:659 msgid "Account recovery email sent" -msgstr "" +msgstr "Email di recupero account spedita" -#: deps/django_authopenid/views.py:569 +#: deps/django_authopenid/views.py:662 msgid "Please add one or more login methods." -msgstr "" +msgstr "Prego aggiungi uno o più metodi di accesso" -#: deps/django_authopenid/views.py:571 +#: deps/django_authopenid/views.py:664 msgid "If you wish, please add, remove or re-validate your login methods" -msgstr "" +msgstr "Se vuoi, aggiungi, rimuovi o rivalida i tuoi metodi di accesso" -#: deps/django_authopenid/views.py:573 +#: deps/django_authopenid/views.py:666 msgid "Please wait a second! Your account is recovered, but ..." -msgstr "" +msgstr "Prego attendi un secondo! Il tuo account è stato recuperato ma..." -#: deps/django_authopenid/views.py:575 +#: deps/django_authopenid/views.py:668 msgid "Sorry, this account recovery key has expired or is invalid" msgstr "" +"Siamo spiacenti ma la tua chiave di recupero account è scaduta o invalida" -#: deps/django_authopenid/views.py:648 +#: deps/django_authopenid/views.py:741 #, python-format msgid "Login method %(provider_name)s does not exist" -msgstr "" +msgstr "Il metodo di accesso %(provider_name)s non esiste" -#: deps/django_authopenid/views.py:654 +#: deps/django_authopenid/views.py:747 msgid "Oops, sorry - there was some error - please try again" msgstr "Oops! C'è stato un errore, per favore riprova" -#: deps/django_authopenid/views.py:745 -#, python-format -msgid "Your %(provider)s login works fine" +#: deps/django_authopenid/views.py:822 +msgid "" +"If you are trying to sign in to another account, please sign out first." msgstr "" +"Se si sta tentando di accedere a un altro account, si prega di sloggarsi " +"prima." -#: deps/django_authopenid/views.py:1056 deps/django_authopenid/views.py:1062 -#, python-format -msgid "your email needs to be validated see %(details_url)s" +#: deps/django_authopenid/views.py:827 +msgid "Otherwise, please report the incident to the site administrator." msgstr "" -"Il tuo indirizzo e-mail dev'essere verificato — vedi %(details_url)s" +"Altrimenti, puoi segnalare tu stesso questo errore agli amministratori del " +"sito" -#: deps/django_authopenid/views.py:1083 +#: deps/django_authopenid/views.py:858 +#, python-format +msgid "Your %(provider)s login works fine" +msgstr "Il tuo metodo di accesso con %(provider)s funziona" + +#: deps/django_authopenid/views.py:1048 +msgid "" +"Sorry, registration failed. Please ask the site administrator for help." +msgstr "Siamo spiacenti, registrazione non riuscita." + +#: deps/django_authopenid/views.py:1194 #, python-format msgid "Recover your %(site)s account" msgstr "Recupera la password su %(site)s" -#: deps/django_authopenid/views.py:1155 +#: deps/django_authopenid/views.py:1230 msgid "Please check your email and visit the enclosed link." -msgstr "" +msgstr "Prego controlla la tua email e visita l'indirizzo ivi contenuto" -#: deps/livesettings/models.py:101 deps/livesettings/models.py:140 +#: deps/livesettings/models.py:107 deps/livesettings/models.py:153 msgid "Site" msgstr "Sito" -#: deps/livesettings/values.py:69 +#: deps/livesettings/values.py:70 msgid "Main" -msgstr "" +msgstr "Principale" -#: deps/livesettings/values.py:128 +#: deps/livesettings/values.py:129 msgid "Base Settings" msgstr "Impostazioni base" -#: deps/livesettings/values.py:235 +#: deps/livesettings/values.py:238 msgid "Default value: \"\"" msgstr "Valore predefinito: \"\"" -#: deps/livesettings/values.py:242 +#: deps/livesettings/values.py:245 msgid "Default value: " msgstr "Valore predefinito:" -#: deps/livesettings/values.py:245 +#: deps/livesettings/values.py:248 #, python-format msgid "Default value: %s" msgstr "Valore predefinito: %s" -#: deps/livesettings/values.py:629 +#: deps/livesettings/values.py:635 #, python-format msgid "Allowed image file types are %(types)s" msgstr "I tipi di file immagine consentiti sono %(types)s" @@ -2871,7 +3311,8 @@ msgstr "Documentazione" #: deps/livesettings/templates/livesettings/group_settings.html:11 #: deps/livesettings/templates/livesettings/site_settings.html:23 -#: skins/common/templates/authopenid/signin.html:143 +#: templates/authopenid/signin.html:148 +#: templates/authopenid/widget_signin.html:148 msgid "Change password" msgstr "Cambia password" @@ -2933,16 +3374,103 @@ msgstr "Espandi tutti" msgid "Congratulations, you are now an Administrator" msgstr "Congratulazioni, ora sei un Amministratore" -#: management/commands/send_accept_answer_reminders.py:58 +#: mail/__init__.py:177 +msgid "<p>To ask by email, please:</p>" +msgstr "<p>Per chiedere via email, per favore:</p>" + +#: mail/__init__.py:179 +msgid "<li>Type title in the subject line</li>" +msgstr "<li>Scrivere il titolo nella riga dell'oggetto</li>" + +#: mail/__init__.py:182 +msgid "<li>Type details of your question into the email body</li>" +msgstr "<li>Scrivi il dettaglio della tua domanda nel corpo dell'email</li>" + +#: mail/__init__.py:185 +msgid "" +"<li>The beginning of the subject line can contain tags,\n" +"<em>enclosed in the square brackets</em> like so: [Tag1; Tag2]</li>" +msgstr "" +"<li>L'inizio della riga dell'oggetto può contenere tag, <em>racchiuso tra le" +" parentesi quadre</em> in questo modo: [Tag1; Tag2]</li>" + +#: mail/__init__.py:189 +msgid "" +"<li>In the beginning of the subject add at least one tag\n" +"<em>enclosed in the brackets</em> like so: [Tag1; Tag2].</li>" +msgstr "" +"<li>All'inizio del soggetto, aggiungere almeno un tag <em>racchiuso tra le " +"parentesi quadre</em> in questo modo: [Tag1; Tag2].</li>" + +#: mail/__init__.py:193 +msgid "" +"<p>Note that a tag may consist of more than one word, to separate\n" +"the tags, use a semicolon or a comma, for example, [One tag; Other tag]</p>" +msgstr "" +"<p>Nota che un tag può essere costituito più di una parola; per separare i " +"tag utilizzare un punto e virgola o una virgola, ad esempio, [un tag; Altri " +"tag]</p>" + +#: mail/__init__.py:208 #, python-format -msgid "Accept the best answer for %(question_count)d of your questions" +msgid "" +"<p>Sorry, there was an error posting your question please contact the " +"%(site)s administrator</p>" msgstr "" +"<p>Ci dispiace, non c'è stato un errore nell' inserimento della domanda. Per" +" favore contatta un amministratore di %(site)s</p>" -#: management/commands/send_accept_answer_reminders.py:63 +#: mail/__init__.py:235 +#, python-format +msgid "" +"<p>Sorry, in order to post questions on %(site)s by email, please <a " +"href=\"%(url)s\">register first</a></p>" +msgstr "" +"<p>Siamo spiacenti, per poter inviare domande su %(site)s tramite email, " +"prego <a href=\"%(url)s\">registrati prima</a></p>" + +#: mail/__init__.py:243 +msgid "" +"<p>Sorry, your question could not be posted due to insufficient privileges " +"of your user account</p>" +msgstr "" +"<p>Spiacenti, la tua domanda non puo' essere inviata a causa dell' " +"insufficienza di privilegi del tuo account utente</p>" + +#: mail/lamson_handlers.py:165 +msgid "" +"You were replying to an email address unknown to the system or " +"you were replying from a different address from the one where you" +" received the notification." +msgstr "" +"Stai rispondendo ad un indirizzo email sconosciuto al sistema o stai " +"rispondendo da un indirizzo email differente da quello indicato nella " +"notifica." + +#: mail/lamson_handlers.py:252 +#, python-format +msgid "Re: Welcome to %(site_name)s" +msgstr "Re: Benvenuto in %(site_name)s" + +#: mail/lamson_handlers.py:259 +msgid "Please reply to the welcome email without editing it" +msgstr "Si prega di rispondere all'email di benvenuto senza modificarla" + +#: mail/lamson_handlers.py:321 +#, python-format +msgid "Re: %s" +msgstr "Re: %s" + +#: management/commands/send_accept_answer_reminders.py:60 +#, python-format +msgid "Accept the best answer for %(question_count)d of your questions" +msgstr "Accetta la migliore risposta per %(question_count)d delle tue domande" + +#: management/commands/send_accept_answer_reminders.py:65 msgid "Please accept the best answer for this question:" msgstr "Per favore accetta la migliore risposta per questa domanda:" -#: management/commands/send_accept_answer_reminders.py:65 +#: management/commands/send_accept_answer_reminders.py:67 msgid "Please accept the best answer for these questions:" msgstr "Per favore accetta la migliore risposta per queste domande:" @@ -2950,8 +3478,8 @@ msgstr "Per favore accetta la migliore risposta per queste domande:" #, python-format msgid "%(question_count)d updated question about %(topics)s" msgid_plural "%(question_count)d updated questions about %(topics)s" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "%(question_count)d domanda aggiornata riguardante %(topics)s" +msgstr[1] "%(question_count)d domande aggiornate riguardanti %(topics)s" #: management/commands/send_email_alerts.py:425 #, python-format @@ -2959,10 +3487,14 @@ msgid "" "<p>Dear %(name)s,</p><p>The following question has been updated " "%(sitename)s</p>" msgid_plural "" -"<p>Dear %(name)s,</p><p>The following %(num)d questions have been updated on " -"%(sitename)s:</p>" +"<p>Dear %(name)s,</p><p>The following %(num)d questions have been updated on" +" %(sitename)s:</p>" msgstr[0] "" +"<p>Caro %(name)s,</p><p>La seguente %(num)d domanda è stata aggiornata " +"in %(sitename)s:</p>" msgstr[1] "" +"<p>Caro %(name)s,</p><p>Le seguenti domande sono state aggiornate in " +"%(sitename)s</p>" #: management/commands/send_email_alerts.py:449 msgid "new question" @@ -2971,39 +3503,44 @@ msgstr "nuova domanda" #: management/commands/send_email_alerts.py:474 #, python-format msgid "" -"<p>Please remember that you can always <a hrefl\"%(email_settings_link)s" -"\">adjust</a> frequency of the email updates or turn them off entirely.<br/" -">If you believe that this message was sent in an error, please email about " -"it the forum administrator at %(admin_email)s.</p><p>Sincerely,</p><p>Your " -"friendly %(sitename)s server.</p>" +"<p>Please remember that you can always <a " +"href=\"%(email_settings_link)s\">adjust</a> frequency of the email updates " +"or turn them off entirely.<br/>If you believe that this message was sent in " +"an error, please email about it the forum administrator at " +"%(admin_email)s.</p><p>Sincerely,</p><p>Your friendly %(sitename)s " +"server.</p>" msgstr "" +"<p>Ricorda che puoi sempre <a href=\"%(email_settings_link)s\">aggiornare</a> la frequenza degli aggiornamenti via mail o disattivarli completamente. <br/> Se pensi che questa email ti sia arrivata per errore, prego contatta l'amministratore del forum all'indirizzo %(admin_email)s.</p>\n" +"<p>Saluti,</p><p>Il server %(sitename)s.</p>" -#: management/commands/send_unanswered_question_reminders.py:60 +#: management/commands/send_unanswered_question_reminders.py:66 #, python-format msgid "%(question_count)d unanswered question about %(topics)s" msgid_plural "%(question_count)d unanswered questions about %(topics)s" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "%(question_count)d domanda non risposta riguardo %(topics)s" +msgstr[1] "%(question_count)d domande non risposte riguardo %(topics)s" -#: middleware/forum_mode.py:53 -#, fuzzy, python-format +#: middleware/forum_mode.py:57 +#, python-format msgid "Please log in to use %s" -msgstr "Accedi o registrati per inserire domande" +msgstr "Accedi o registrati per usare %s" -#: models/__init__.py:320 +#: models/__init__.py:507 msgid "" "Sorry, you cannot accept or unaccept best answers because your account is " "blocked" msgstr "" -"Mi spiace, non puoi accettare risposte perché il tuo account è stato bloccato" +"Mi spiace, non puoi accettare risposte perché il tuo account è stato " +"bloccato" -#: models/__init__.py:324 +#: models/__init__.py:511 msgid "" "Sorry, you cannot accept or unaccept best answers because your account is " "suspended" -msgstr "Mi spiace, non puoi accettare risposte perché il tuo account è sospeso" +msgstr "" +"Mi spiace, non puoi accettare risposte perché il tuo account è sospeso" -#: models/__init__.py:337 +#: models/__init__.py:525 #, python-format msgid "" ">%(points)s points required to accept or unaccept your own answer to your " @@ -3012,13 +3549,15 @@ msgstr "" "Ti servono più di %(points)s punti per accettare o negare la risposta alla " "tua stessa domanda" -#: models/__init__.py:359 +#: models/__init__.py:549 #, python-format msgid "" "Sorry, you will be able to accept this answer only after %(will_be_able_at)s" msgstr "" +"Siamo spiacenti, sarai in grado di accettare questa risposta solo dopo " +"%(will_be_able_at)s" -#: models/__init__.py:367 +#: models/__init__.py:557 #, python-format msgid "" "Sorry, only moderators or original author of the question - %(username)s - " @@ -3027,45 +3566,49 @@ msgstr "" "Mi spiace, solo il moderatore o l'autore della domanda, %(username)s, può " "accettare la risposta migliore" -#: models/__init__.py:390 -#, fuzzy +#: models/__init__.py:580 msgid "Sorry, you cannot vote for your own posts" msgstr "Mi spiace, non puoi votare per i tuoi post" -#: models/__init__.py:394 +#: models/__init__.py:584 msgid "Sorry your account appears to be blocked " msgstr "Mi spiace, il tuo account è stato bloccato" -#: models/__init__.py:399 +#: models/__init__.py:589 msgid "Sorry your account appears to be suspended " msgstr "Mi spiace, il tuo account è stato sospeso" -#: models/__init__.py:409 +#: models/__init__.py:599 #, python-format msgid ">%(points)s points required to upvote" msgstr "" "Serve avere più di %(points)s punti reputazione per poter votare a favore" -#: models/__init__.py:415 +#: models/__init__.py:605 #, python-format msgid ">%(points)s points required to downvote" msgstr "" "Serve avere più di %(points)s punti reputazione per poter votare contro" -#: models/__init__.py:430 +#: models/__init__.py:620 msgid "Sorry, blocked users cannot upload files" msgstr "Mi spiace, gli utenti bloccati non possono caricare files" -#: models/__init__.py:431 +#: models/__init__.py:621 msgid "Sorry, suspended users cannot upload files" msgstr "Mi spiace, gli utenti sospesi non possono caricare files" -#: models/__init__.py:433 +#: models/__init__.py:623 #, python-format msgid "sorry, file uploading requires karma >%(min_rep)s" +msgstr "siamo spiacenti, l'upload dei file richiede un karma >%(min_rep)s" + +#: models/__init__.py:655 +msgid "Sorry, you already gave an answer, please edit it instead." msgstr "" +"Siamo spiacenti, hai già dato una risposta, si prega di modificarla invece." -#: models/__init__.py:482 +#: models/__init__.py:679 #, python-format msgid "" "Sorry, comments (except the last one) are editable only within %(minutes)s " @@ -3074,22 +3617,26 @@ msgid_plural "" "Sorry, comments (except the last one) are editable only within %(minutes)s " "minutes from posting" msgstr[0] "" +"Siamo spiacenti, i commenti (eccetto l'ultimo) sono editabili solo dopo " +"%(minutes)s minuto dalla pubblicazione " msgstr[1] "" +"Siamo spiacenti, i commenti (eccetto l'ultimo) sono editabili solo dopo " +"%(minutes)s minuti dalla pubblicazione " -#: models/__init__.py:494 +#: models/__init__.py:691 msgid "Sorry, but only post owners or moderators can edit comments" msgstr "" "Mi spiace, solo gli autori, i moderatori e gli amministratori possono " "modificare i commenti" -#: models/__init__.py:519 +#: models/__init__.py:716 msgid "" "Sorry, since your account is suspended you can comment only your own posts" msgstr "" "Mi spiace, visto che il tuo account è sospeso puoi commentare solo i tuoi " "post" -#: models/__init__.py:523 +#: models/__init__.py:720 #, python-format msgid "" "Sorry, to comment any post a minimum reputation of %(min_rep)s points is " @@ -3099,34 +3646,35 @@ msgstr "" "Per commentare gli altri post serve avere almeno %(min_rep)s punti " "reputazione. " -#: models/__init__.py:553 +#: models/__init__.py:750 msgid "" "This post has been deleted and can be seen only by post owners, site " "administrators and moderators" msgstr "" -"Questo post è stato cancellato e può essere consultato solo dall'autore, dai " -"moderatori e dagli amministratori" +"Questo post è stato cancellato e può essere consultato solo dall'autore, dai" +" moderatori e dagli amministratori" -#: models/__init__.py:570 +#: models/__init__.py:767 msgid "" -"Sorry, only moderators, site administrators and post owners can edit deleted " -"posts" +"Sorry, only moderators, site administrators and post owners can edit deleted" +" posts" msgstr "" "Mi spiace, solo l'autore, i moderatori e gli amministratori possono " "modificare un post cancellato." -#: models/__init__.py:585 +#: models/__init__.py:782 msgid "Sorry, since your account is blocked you cannot edit posts" msgstr "" "Mi spiace, non puoi modificare alcun post perché il tuo account è stato " "bloccato" -#: models/__init__.py:589 -msgid "Sorry, since your account is suspended you can edit only your own posts" +#: models/__init__.py:786 +msgid "" +"Sorry, since your account is suspended you can edit only your own posts" msgstr "" "Mi spiace, puoi modificare solo i tuoi post perché il tuo account è sospeso" -#: models/__init__.py:594 +#: models/__init__.py:791 #, python-format msgid "" "Sorry, to edit wiki posts, a minimum reputation of %(min_rep)s is required" @@ -3134,7 +3682,7 @@ msgstr "" "Mi spiace, per modificare i post appartenenti allo wiki servono almeno " "%(min_rep)s punti reputazione" -#: models/__init__.py:601 +#: models/__init__.py:798 #, python-format msgid "" "Sorry, to edit other people's posts, a minimum reputation of %(min_rep)s is " @@ -3143,7 +3691,7 @@ msgstr "" "Mi spiace, per modificare i post altrui servono almeno %(min_rep)s punti " "reputazione" -#: models/__init__.py:664 +#: models/__init__.py:861 msgid "" "Sorry, cannot delete your question since it has an upvoted answer posted by " "someone else" @@ -3157,17 +3705,17 @@ msgstr[1] "" "Mi spiace, non puoi cancellare la tua domanda perché qualcun altro ha " "fornito delle risposte con voti a favore" -#: models/__init__.py:679 +#: models/__init__.py:876 msgid "Sorry, since your account is blocked you cannot delete posts" msgstr "Mi spiace, non puoi cancellare post perché il tuo account è blocato" -#: models/__init__.py:683 +#: models/__init__.py:880 msgid "" "Sorry, since your account is suspended you can delete only your own posts" msgstr "" "Mi spiace, puoi cancellare solo i tuoi post perché il tuo account è sospeso" -#: models/__init__.py:687 +#: models/__init__.py:884 #, python-format msgid "" "Sorry, to deleted other people' posts, a minimum reputation of %(min_rep)s " @@ -3176,16 +3724,16 @@ msgstr "" "Mi spiace, per cancellare i post altrui servono almeno %(min_rep)s punti " "reputazione" -#: models/__init__.py:707 +#: models/__init__.py:904 msgid "Sorry, since your account is blocked you cannot close questions" msgstr "" "Mi spiace, non puoi chiudere domande perché il tuo account è stato bloccato" -#: models/__init__.py:711 +#: models/__init__.py:908 msgid "Sorry, since your account is suspended you cannot close questions" msgstr "Mi spiace, non puoi chiudere domande perché il tuo account è sospeso" -#: models/__init__.py:715 +#: models/__init__.py:912 #, python-format msgid "" "Sorry, to close other people' posts, a minimum reputation of %(min_rep)s is " @@ -3194,7 +3742,7 @@ msgstr "" "Mi spiace, per chiudere post altrui servono almeno %(min_rep)s punti " "reputazione." -#: models/__init__.py:724 +#: models/__init__.py:921 #, python-format msgid "" "Sorry, to close own question a minimum reputation of %(min_rep)s is required" @@ -3202,7 +3750,7 @@ msgstr "" "Mi spiace, per chiudere una tua domanda servono almeno %(min_rep)s punti " "reputazione." -#: models/__init__.py:748 +#: models/__init__.py:947 #, python-format msgid "" "Sorry, only administrators, moderators or post owners with reputation > " @@ -3211,76 +3759,90 @@ msgstr "" "Mi spiace, solo amministratori, moderatori e autori con più di %(min_rep)s " "punti reputazione possono riaprire domande." -#: models/__init__.py:754 +#: models/__init__.py:953 #, python-format msgid "" -"Sorry, to reopen own question a minimum reputation of %(min_rep)s is required" +"Sorry, to reopen own question a minimum reputation of %(min_rep)s is " +"required" msgstr "" "Mi spiace, per riaprire una tua domanda devi avere almeno %(min_rep)s punti " "reputazione." -#: models/__init__.py:775 +#: models/__init__.py:958 +msgid "Sorry, you cannot reopen questions because your account is blocked" +msgstr "" +"Mi spiace, non puoi riaprire domande perché il tuo account è stato bloccato" + +#: models/__init__.py:963 +msgid "Sorry, you cannot reopen questions because your account is suspended" +msgstr "Mi spiace, non puoi riaprire domande perché il tuo account è sospeso" + +#: models/__init__.py:986 msgid "You have flagged this question before and cannot do it more than once" msgstr "" +"Hai selezionato la domanda in precedenza e non puoi farlo più di una volta" -#: models/__init__.py:783 -#, fuzzy -msgid "Sorry, since your account is blocked you cannot flag posts as offensive" +#: models/__init__.py:994 +msgid "" +"Sorry, since your account is blocked you cannot flag posts as offensive" msgstr "Mi spiace, non puoi cancellare post perché il tuo account è blocato" -#: models/__init__.py:794 -#, fuzzy, python-format +#: models/__init__.py:1005 +#, python-format msgid "" "Sorry, to flag posts as offensive a minimum reputation of %(min_rep)s is " "required" msgstr "" -"Mi spiace, servono almeno %(min_rep)s punti reputazione per cambiare i tag " -"di una domanda" +"Mi spiace, servono almeno %(min_rep)s punti reputazione per dichiarare un " +"post come offensivo" -#: models/__init__.py:815 +#: models/__init__.py:1026 #, python-format msgid "" "Sorry, you have exhausted the maximum number of %(max_flags_per_day)s " "offensive flags per day." msgstr "" +"siamo spiacenti, hai esaurito il massimo numero di %(max_flags_per_day)s " +"flag offensivi al giorno" -#: models/__init__.py:827 +#: models/__init__.py:1038 msgid "cannot remove non-existing flag" -msgstr "" +msgstr "Non è possibile rimuovere un flag non esistente" -#: models/__init__.py:833 -#, fuzzy +#: models/__init__.py:1044 msgid "Sorry, since your account is blocked you cannot remove flags" -msgstr "Mi spiace, non puoi cancellare post perché il tuo account è blocato" +msgstr "Mi spiace, non puoi cancellare i flag perché il tuo account è blocato" -#: models/__init__.py:837 +#: models/__init__.py:1048 msgid "" "Sorry, your account appears to be suspended and you cannot remove flags. " "Please contact the forum administrator to reach a resolution." msgstr "" +"Siamo spiacenti, il tuo account sembra essere stato sospeso e non puoi " +"rimuovere i flag. Prego contatta un amministratore per risolvere il " +"problema." -#: models/__init__.py:843 -#, fuzzy, python-format +#: models/__init__.py:1054 +#, python-format msgid "Sorry, to flag posts a minimum reputation of %(min_rep)d is required" msgid_plural "" "Sorry, to flag posts a minimum reputation of %(min_rep)d is required" msgstr[0] "" -"Mi spiace, servono almeno %(min_rep)s punti reputazione per cambiare i tag " +"Mi spiace, serve almeno %(min_rep)d punto reputazione per cambiare i tag " "di una domanda" msgstr[1] "" -"Mi spiace, servono almeno %(min_rep)s punti reputazione per cambiare i tag " -"di una domanda" +"Mi spiace, servono almeno %(min_rep)d punti reputazione per cambiare i tag di " +"una domanda" -#: models/__init__.py:862 -#, fuzzy +#: models/__init__.py:1073 msgid "you don't have the permission to remove all flags" msgstr "Non hai i permessi per modificare i valori." -#: models/__init__.py:863 +#: models/__init__.py:1074 msgid "no flags for this entry" -msgstr "" +msgstr "nessun flag per questo elemento" -#: models/__init__.py:887 +#: models/__init__.py:1098 msgid "" "Sorry, only question owners, site administrators and moderators can retag " "deleted questions" @@ -3288,19 +3850,19 @@ msgstr "" "Mi spiace, solo gli autori, i moderatori e gli amministratori possono " "cambiare i tag di una domanda cancellata" -#: models/__init__.py:894 +#: models/__init__.py:1105 msgid "Sorry, since your account is blocked you cannot retag questions" msgstr "" "Mi spiace, non puoi cambiare i tag perché il tuo account è stato bloccato." -#: models/__init__.py:898 +#: models/__init__.py:1109 msgid "" "Sorry, since your account is suspended you can retag only your own questions" msgstr "" -"Mi spiace, puoi cambiare i tag solo alle tue domande perché il tuo account è " -"sospeso." +"Mi spiace, puoi cambiare i tag solo alle tue domande perché il tuo account è" +" sospeso." -#: models/__init__.py:902 +#: models/__init__.py:1113 #, python-format msgid "" "Sorry, to retag questions a minimum reputation of %(min_rep)s is required" @@ -3308,145 +3870,181 @@ msgstr "" "Mi spiace, servono almeno %(min_rep)s punti reputazione per cambiare i tag " "di una domanda" -#: models/__init__.py:921 +#: models/__init__.py:1132 msgid "Sorry, since your account is blocked you cannot delete comment" msgstr "" "Mi spiace, non puoi cancellare commenti perché il tuo account è stato " "bloccato." -#: models/__init__.py:925 +#: models/__init__.py:1136 msgid "" "Sorry, since your account is suspended you can delete only your own comments" msgstr "" "Mi spiace, puoi cancellare solo i tuoi commenti perché il tuo account è " "sospeso." -#: models/__init__.py:929 +#: models/__init__.py:1140 #, python-format msgid "Sorry, to delete comments reputation of %(min_rep)s is required" msgstr "" "Mi spiace, servono almeno %(min_rep)s punti reputazione per cancellare " "commenti." -#: models/__init__.py:953 +#: models/__init__.py:1164 msgid "sorry, but older votes cannot be revoked" -msgstr "" +msgstr "siamo spiacenti, ma i vecchi voti non possono essere tolti" -#: models/__init__.py:1469 utils/functions.py:78 +#: models/__init__.py:1820 utils/functions.py:97 #, python-format msgid "on %(date)s" msgstr "il %(date)s" -#: models/__init__.py:1471 +#: models/__init__.py:1822 msgid "in two days" -msgstr "" +msgstr "in due giorni" -#: models/__init__.py:1473 +#: models/__init__.py:1824 msgid "tomorrow" -msgstr "" +msgstr "domani" -#: models/__init__.py:1475 +#: models/__init__.py:1826 #, python-format msgid "in %(hr)d hour" msgid_plural "in %(hr)d hours" msgstr[0] "%(hr)d ora fa" msgstr[1] "%(hr)d ore fa" -#: models/__init__.py:1477 +#: models/__init__.py:1828 #, python-format msgid "in %(min)d min" msgid_plural "in %(min)d mins" msgstr[0] "%(min)d minuto fa" msgstr[1] "%(min)d minuti fa" -#: models/__init__.py:1478 +#: models/__init__.py:1829 #, python-format msgid "%(days)d day" msgid_plural "%(days)d days" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "%(days)d giorno" +msgstr[1] "%(days)d giorni" -#: models/__init__.py:1480 +#: models/__init__.py:1831 #, python-format msgid "" "New users must wait %(days)s before answering their own question. You can " "post an answer %(left)s" msgstr "" +"I nuovi utenti devono aspettare %(days)s prima di poter rispondere alle " +"proprie domande. Puoi pubblicare una risposta %(left)s" -#: models/__init__.py:1653 skins/default/templates/feedback_email.txt:9 +#: models/__init__.py:2019 templates/email/feedback_email.txt:9 msgid "Anonymous" msgstr "utente non registrato" -#: models/__init__.py:1749 +#: models/__init__.py:2123 msgid "Site Adminstrator" msgstr "Amministratore del sito" -#: models/__init__.py:1751 +#: models/__init__.py:2125 msgid "Forum Moderator" msgstr "Moderatore del forum" -#: models/__init__.py:1753 +#: models/__init__.py:2127 msgid "Suspended User" msgstr "Utente sospeso" -#: models/__init__.py:1755 +#: models/__init__.py:2129 msgid "Blocked User" msgstr "Utente bloccato" -#: models/__init__.py:1757 +#: models/__init__.py:2131 msgid "Registered User" msgstr "Utente registrato" -#: models/__init__.py:1759 +#: models/__init__.py:2133 msgid "Watched User" msgstr "Utente in prova" -#: models/__init__.py:1761 +#: models/__init__.py:2135 msgid "Approved User" msgstr "Utente approvato" -#: models/__init__.py:1870 +#: models/__init__.py:2317 #, python-format msgid "%(username)s karma is %(reputation)s" msgstr "%(username)s ha %(reputation)s punti reputazione" -#: models/__init__.py:1880 +#: models/__init__.py:2327 #, python-format msgid "one gold badge" msgid_plural "%(count)d gold badges" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "%(count)d medaglia d'oro" +msgstr[1] "una medaglie d'oro" -#: models/__init__.py:1887 +#: models/__init__.py:2334 #, python-format msgid "one silver badge" msgid_plural "%(count)d silver badges" msgstr[0] "una medaglia d'argento" msgstr[1] "%(count)d medaglie d'argento" -#: models/__init__.py:1894 +#: models/__init__.py:2341 #, python-format msgid "one bronze badge" msgid_plural "%(count)d bronze badges" msgstr[0] "una medaglia di bronzo" msgstr[1] "%(count)d medaglie di bronzo" -#: models/__init__.py:1905 +#: models/__init__.py:2352 #, python-format msgid "%(item1)s and %(item2)s" -msgstr "" +msgstr "%(item1)s e %(item2)s" -#: models/__init__.py:1909 +#: models/__init__.py:2356 #, python-format msgid "%(user)s has %(badges)s" -msgstr "" +msgstr "%(user)s ha %(badges)s" + +#: models/__init__.py:2948 +#, python-format +msgid "%(user)s shared a %(post_link)s." +msgstr "%(user)s ha condiviso %(post_link)s." + +#: models/__init__.py:2951 models/__init__.py:2961 +#, python-format +msgid "%(user)s edited a %(post_link)s." +msgstr "%(user)s ha modificato %(post_link)s." -#: models/__init__.py:2389 -#, fuzzy, python-format +#: models/__init__.py:2953 +#, python-format +msgid "%(user)s posted a %(post_link)s" +msgstr "%(user)s ha pubblicato un %(post_link)s" + +#: models/__init__.py:2956 +#, python-format +msgid "%(user)s edited an %(post_link)s." +msgstr "%(user)s ha modificato %(post_link)s." + +#: models/__init__.py:2958 +#, python-format +msgid "%(user)s posted an %(post_link)s." +msgstr "%(user)s ha pubblicato un %(post_link)s" + +#: models/__init__.py:2963 +#, python-format +msgid "%(user)s posted a %(post_link)s." +msgstr "%(user)s ha pubblicato un %(post_link)s" + +#: models/__init__.py:2979 +msgid "To reply, PLEASE WRITE ABOVE THIS LINE." +msgstr "Per rispondere, si prega di scrivere di sopra di questa linea." + +#: models/__init__.py:3011 +#, python-format msgid "\"%(title)s\"" -msgstr "Re:\"%(title)s\"" +msgstr "\"%(title)s\"" -#: models/__init__.py:2542 +#: models/__init__.py:3235 #, python-format msgid "" "Congratulations, you have received a badge '%(badge_name)s'. Check out <a " @@ -3455,9 +4053,14 @@ msgstr "" "Congratulazioni, hai ricevuto la medaglia %(badge_name)s. Controlla il <a " "href=\"%(user_profile)s\">tuo profilo</a>." -#: models/__init__.py:2745 views/commands.py:460 +#: models/__init__.py:3507 +#, python-format +msgid "Welcome to %(site_name)s" +msgstr "Benvenuto in %(site_name)s" + +#: models/__init__.py:3528 views/commands.py:678 msgid "Your tag subscription was saved, thanks!" -msgstr "" +msgstr "La tua sottoscrizione al tag è stata salvata." #: models/badges.py:129 #, python-format @@ -3480,7 +4083,7 @@ msgstr "Sotto pressione" #: models/badges.py:174 #, python-format msgid "Received at least %(votes)s upvote for an answer for the first time" -msgstr "" +msgstr "Ricevuto almeno %(votes)s voti positivi per una risposta la prima volta" #: models/badges.py:178 msgid "Teacher" @@ -3569,7 +4172,7 @@ msgstr "Domanda gettonata" #: models/badges.py:418 models/badges.py:429 models/badges.py:441 #, python-format msgid "Asked a question with %(views)s views" -msgstr "Ha posto una domanda con %(views)s consultazioni" +msgstr "Ha posto una domanda con %(views)s viste" #: models/badges.py:425 msgid "Notable Question" @@ -3611,8 +4214,8 @@ msgid "" "Answered a question more than %(days)s days later with at least %(votes)s " "votes" msgstr "" -"Ha risposto a una domanda vecchia di almeno %(days)s giorni ottenendo almeno " -"%(votes)s voti" +"Ha risposto a una domanda vecchia di almeno %(days)s giorni ottenendo almeno" +" %(votes)s voti" #: models/badges.py:525 msgid "Necromancer" @@ -3652,12 +4255,12 @@ msgstr "Prima revisione" #: models/badges.py:623 msgid "Associate Editor" -msgstr "" +msgstr "Associato" #: models/badges.py:627 -#, fuzzy, python-format +#, python-format msgid "Edited %(num)s entries" -msgstr "Ha fatto almeno 100 revisioni" +msgstr "Ha fatto almeno %(num)s revisioni" #: models/badges.py:634 msgid "Organizer" @@ -3676,9 +4279,9 @@ msgid "Completed all user profile fields" msgstr "Ha completato tutti i campi del suo profilo utente" #: models/badges.py:663 -#, fuzzy, python-format +#, python-format msgid "Question favorited by %(num)s users" -msgstr "Domanda inserita tra le \"preferite\" da almeno 25 utenti" +msgstr "Domanda inserita tra le \"preferite\" da almeno %(num)s utenti" #: models/badges.py:689 msgid "Stellar Question" @@ -3690,30 +4293,30 @@ msgstr "Domanda apprezzata" #: models/badges.py:710 msgid "Enthusiast" -msgstr "" +msgstr "Entusiasta" #: models/badges.py:714 #, python-format msgid "Visited site every day for %(num)s days in a row" -msgstr "" +msgstr "Sito visitato ogni giorno per %(num)s giorni di fila" #: models/badges.py:732 msgid "Commentator" msgstr "Commentatore" #: models/badges.py:736 -#, fuzzy, python-format +#, python-format msgid "Posted %(num_comments)s comments" -msgstr "Inseriti (%(comment_count)s commenti" +msgstr "Inseriti %(num_comments)s commenti" #: models/badges.py:752 msgid "Taxonomist" msgstr "Tassonomista" #: models/badges.py:756 -#, fuzzy, python-format +#, python-format msgid "Created a tag used by %(num)s questions" -msgstr "Ha creato un tag usato da almeno 50 domande" +msgstr "Ha creato un tag usato da almeno %(num)s domande" #: models/badges.py:774 msgid "Expert" @@ -3723,52 +4326,129 @@ msgstr "Esperto" msgid "Very active in one tag" msgstr "Molto attivo in domande con lo stesso tag" -#: models/post.py:1071 +#: models/post.py:1483 msgid "Sorry, this question has been deleted and is no longer accessible" msgstr "Mi spiace, questa domanda è stata cancellata e non è più accessibile" -#: models/post.py:1087 +#: models/post.py:1499 msgid "" "Sorry, the answer you are looking for is no longer available, because the " "parent question has been removed" msgstr "" +"Siamo spiacenti, la risposta che cercavi non è più disponibile perchè la " +"domanda originale è stata rimossa" -#: models/post.py:1094 +#: models/post.py:1506 msgid "Sorry, this answer has been removed and is no longer accessible" msgstr "Mi spiace, questa domanda è stata cancellata e non è più accessibile" -#: models/post.py:1110 +#: models/post.py:1522 msgid "" "Sorry, the comment you are looking for is no longer accessible, because the " "parent question has been removed" msgstr "" +"Siamo spiacenti, il commento che cercavi non è più disponibile perchè la " +"domanda originale è stata rimossa" -#: models/post.py:1117 +#: models/post.py:1529 msgid "" "Sorry, the comment you are looking for is no longer accessible, because the " "parent answer has been removed" msgstr "" +"Siamo spiacenti, la risposta che cercavi non è più disponibile perchè la " +"domanda originale è stata rimossa" -#: models/question.py:54 +#: models/post.py:1551 +msgid "This post is temporarily not available" +msgstr "Questo post è temporaneamente non disponibile" + +#: models/post.py:2054 #, python-format -msgid "\" and \"%s\"" +msgid "" +"Thank you for your post to %(site)s. It will be published after the " +"moderators review." msgstr "" +"Grazie per il tuo post a %(site)s. Saraà pubblicato dopo la revisione dei " +"moderatori." + +#: models/post.py:2058 +#, python-format +msgid "your post to %(site)s" +msgstr "il tuo post in %(site)s" -#: models/question.py:57 +#: models/post.py:2065 +msgid "" +"Your post was placed on the moderation queue and will be published after the" +" moderator approval." +msgstr "" +"Il tuo post è stato inserito nella coda di moderazione e sarà pubblicato " +"dopo l'approvazione del moderatore." + +#: models/question.py:77 +#, python-format +msgid "\" and \"%s\"" +msgstr "\" e \"%s\"" + +#: models/question.py:80 msgid "\" and more" msgstr "\" ed altro ancora" -#: models/reply_by_email.py:71 -#, fuzzy +#: models/question.py:686 +#, python-format +msgid "%(count)d answer:" +msgid_plural "%(count)d answers:" +msgstr[0] "%(count)d risposta" +msgstr[1] "%(count)d risposte" + +#: models/question.py:1165 +#, python-format +msgid "Tag %s is new and will be submitted for the moderators approval" +msgstr "Il tag %s è nuovo e sarà presentato per l'approvazione dei moderatori" + +#: models/question.py:1170 models/tag.py:231 +#, python-format +msgid "Tags %s are new and will be submitted for the moderators approval" +msgstr "" +"I tag %s sono nuovi e saranno presentati per l'approvazione dei moderatori" + +#: models/reply_by_email.py:37 +msgid "Post an answer" +msgstr "Inviare una risposta" + +#: models/reply_by_email.py:38 +msgid "Post a comment" +msgstr "Posta un commento" + +#: models/reply_by_email.py:39 +msgid "Edit post" +msgstr "Modifica il post" + +#: models/reply_by_email.py:40 +msgid "Append to post" +msgstr "Aggiungi al post" + +#: models/reply_by_email.py:41 +msgid "Answer or comment, depending on the size of post" +msgstr "Risposta o commento, a seconda delle dimensioni del post" + +#: models/reply_by_email.py:42 +msgid "Validate email and record signature" +msgstr "Convalidare l'email e salva la firma" + +#: models/reply_by_email.py:105 +msgid "added content by email" +msgstr "aggiunto contenuto via e-mail" + +#: models/reply_by_email.py:108 msgid "edited by email" -msgstr "Verifica e-mail" +msgstr "modificato via email" -#: models/repute.py:143 +#: models/repute.py:223 #, python-format msgid "<em>Changed by moderator. Reason:</em> %(reason)s" msgstr "<em>Modificato da un moderatore. Motivo:</em> %(reason)s" -#: models/repute.py:154 +#: models/repute.py:234 #, python-format msgid "" "%(points)s points were added for %(username)s's contribution to question " @@ -3777,7 +4457,7 @@ msgstr "" " %(username)s ha guadagnato %(points)s punti reputazione per i suoi " "contributi alla domanda %(question_title)s" -#: models/repute.py:159 +#: models/repute.py:239 #, python-format msgid "" "%(points)s points were subtracted for %(username)s's contribution to " @@ -3786,728 +4466,92 @@ msgstr "" " %(username)s ha perso %(points)s punti reputazione per i suoi contributi " "alla domanda %(question_title)s" -#: models/tag.py:106 -msgid "interesting" -msgstr "interessanti" - -#: models/tag.py:106 -msgid "ignored" -msgstr "ignorate" +#: models/tag.py:223 +#, python-format +msgid "New tags added to %s" +msgstr "Nuovi tag aggiunti a %s" -#: models/user.py:266 +#: models/user.py:282 msgid "Entire forum" msgstr "Tutto il forum" -#: models/user.py:267 +#: models/user.py:283 msgid "Questions that I asked" msgstr "Domande poste da me" -#: models/user.py:268 +#: models/user.py:284 msgid "Questions that I answered" msgstr "Domande a cui ho risposto" -#: models/user.py:269 +#: models/user.py:285 msgid "Individually selected questions" msgstr "Domande selezionate individualmente" -#: models/user.py:270 +#: models/user.py:286 msgid "Mentions and comment responses" msgstr "Citazioni e risposte ai miei commenti" -#: models/user.py:273 +#: models/user.py:289 msgid "Instantly" msgstr "Immediatamente" -#: models/user.py:274 +#: models/user.py:290 msgid "Daily" msgstr "Ogni giorno" -#: models/user.py:275 +#: models/user.py:291 msgid "Weekly" msgstr "Ogni settimana" -#: models/user.py:276 +#: models/user.py:292 msgid "No email" msgstr "Mai" -#: skins/common/templates/authopenid/authopenid_macros.html:63 -#, fuzzy -msgid "Please enter your <span>user name</span>, then sign in" -msgstr "Per favore inserisci username e password" - -#: skins/common/templates/authopenid/authopenid_macros.html:64 -#: skins/common/templates/authopenid/signin.html:97 -#, fuzzy -msgid "(or select another login method above)" -msgstr "scegli una delle opzioni qui sopra" - -#: skins/common/templates/authopenid/authopenid_macros.html:66 -#: skins/common/templates/authopenid/signin.html:113 -#, fuzzy -msgid "Sign in" -msgstr "signin/" - -#: skins/common/templates/authopenid/changeemail.html:2 -#: skins/common/templates/authopenid/changeemail.html:8 -#: skins/common/templates/authopenid/changeemail.html:49 -#, fuzzy -msgid "Change Email" -msgstr "Cambia e-mail" - -#: skins/common/templates/authopenid/changeemail.html:10 -msgid "Save your email address" -msgstr "Salva il tuo indirizzo e-mail" - -#: skins/common/templates/authopenid/changeemail.html:15 -#, python-format -msgid "" -"<span class=\\\"strong big\\\">Enter your new email into the box below</" -"span> if \n" -"you'd like to use another email for <strong>update subscriptions</strong>.\n" -"<br>Currently you are using <strong>%%(email)s</strong>" -msgstr "" - -#: skins/common/templates/authopenid/changeemail.html:19 -#, python-format -msgid "" -"<span class='strong big'>Please enter your email address in the box below.</" -"span>\n" -"Valid email address is required on this Q&A forum. If you like, \n" -"you can <strong>receive updates</strong> on interesting questions or entire\n" -"forum via email. Also, your email is used to create a unique \n" -"<a href='%%(gravatar_faq_url)s'><strong>gravatar</strong></a> image for " -"your\n" -"account. Email addresses are never shown or otherwise shared with anybody\n" -"else." -msgstr "" +#: models/user.py:512 +msgid "Can join when they want" +msgstr "Possono entrare quando vogliono" -#: skins/common/templates/authopenid/changeemail.html:38 -msgid "" -"<strong>Your new Email:</strong> \n" -"(will <strong>not</strong> be shown to anyone, must be valid)" -msgstr "" +#: models/user.py:513 +msgid "Users ask permission" +msgstr "Utenti chiedono il permesso" -#: skins/common/templates/authopenid/changeemail.html:49 -msgid "Save Email" -msgstr "Salva e-mail" +#: models/user.py:514 +msgid "Moderator adds users" +msgstr "Moderatore aggiunge utenti" -#: skins/common/templates/authopenid/changeemail.html:51 -#: skins/default/templates/answer_edit.html:25 -#: skins/default/templates/close.html:16 -#: skins/default/templates/feedback.html:64 -#: skins/default/templates/question_edit.html:36 -#: skins/default/templates/question_retag.html:22 -#: skins/default/templates/reopen.html:27 -#: skins/default/templates/subscribe_for_tags.html:16 -#: skins/default/templates/user_profile/user_edit.html:102 -msgid "Cancel" -msgstr "Annulla" - -#: skins/common/templates/authopenid/changeemail.html:58 -msgid "Validate email" -msgstr "Verifica e-mail" - -#: skins/common/templates/authopenid/changeemail.html:61 -#, python-format -msgid "" -"<span class=\\\"strong big\\\">An email with a validation link has been sent " -"to \n" -"%%(email)s.</span> Please <strong>follow the emailed link</strong> with " -"your \n" -"web browser. Email validation is necessary to help insure the proper use " -"of \n" -"email on <span class=\\\"orange\\\">Q&A</span>. If you would like to " -"use \n" -"<strong>another email</strong>, please <a \n" -"href='%%(change_email_url)s'><strong>change it again</strong></a>." -msgstr "" - -#: skins/common/templates/authopenid/changeemail.html:70 -msgid "Email not changed" -msgstr "E-mail non modificata" - -#: skins/common/templates/authopenid/changeemail.html:73 -#, python-format -msgid "" -"<span class=\\\"strong big\\\">Your email address %%(email)s has not been " -"changed.\n" -"</span> If you decide to change it later - you can always do it by editing \n" -"it in your user profile or by using the <a \n" -"href='%%(change_email_url)s'><strong>previous form</strong></a> again." -msgstr "" - -#: skins/common/templates/authopenid/changeemail.html:80 -msgid "Email changed" -msgstr "E-mail modificata" - -#: skins/common/templates/authopenid/changeemail.html:83 -#, python-format -msgid "" -"\n" -"<span class='big strong'>Your email address is now set to %%(email)s.</" -"span> \n" -"Updates on the questions that you like most will be sent to this address. \n" -"Email notifications are sent once a day or less frequently - only when " -"there \n" -"are any news." -msgstr "" - -#: skins/common/templates/authopenid/changeemail.html:91 -msgid "Email verified" -msgstr "E-mail verificata" - -#: skins/common/templates/authopenid/changeemail.html:94 -msgid "" -"<span class=\\\"big strong\\\">Thank you for verifying your email!</span> " -"Now \n" -"you can <strong>ask</strong> and <strong>answer</strong> questions. Also " -"if \n" -"you find a very interesting question you can <strong>subscribe for the \n" -"updates</strong> - then will be notified about changes <strong>once a day</" -"strong>\n" -"or less frequently." -msgstr "" - -#: skins/common/templates/authopenid/changeemail.html:102 -#, fuzzy -msgid "Validation email not sent" -msgstr "Verifica e-mail" - -#: skins/common/templates/authopenid/changeemail.html:105 -#, python-format -msgid "" -"<span class='big strong'>Your current email address %%(email)s has been \n" -"validated before</span> so the new key was not sent. You can <a \n" -"href='%%(change_link)s'>change</a> email used for update subscriptions if \n" -"necessary." -msgstr "" - -#: skins/common/templates/authopenid/complete.html:21 -#, fuzzy -msgid "Registration" -msgstr "Registrati" - -#: skins/common/templates/authopenid/complete.html:23 -#, fuzzy -msgid "User registration" -msgstr "Registrati" - -#: skins/common/templates/authopenid/complete.html:60 -msgid "<strong>Receive forum updates by email</strong>" -msgstr "" - -#: skins/common/templates/authopenid/complete.html:64 -#: skins/common/templates/authopenid/signup_with_password.html:46 -msgid "please select one of the options above" -msgstr "scegli una delle opzioni qui sopra" - -#: skins/common/templates/authopenid/complete.html:67 -#: skins/common/templates/authopenid/signup_with_password.html:4 -#: skins/common/templates/authopenid/signup_with_password.html:53 -msgid "Signup" -msgstr "Accedi" - -#: skins/common/templates/authopenid/confirm_email.txt:1 -msgid "Thank you for registering at our Q&A forum!" -msgstr "Grazie per esserti registrato sul nostro forum Q&A!" - -#: skins/common/templates/authopenid/confirm_email.txt:3 -msgid "Your account details are:" -msgstr "Il tuo account è:" - -#: skins/common/templates/authopenid/confirm_email.txt:5 -msgid "Username:" -msgstr "Nome utente:" - -#: skins/common/templates/authopenid/confirm_email.txt:6 -msgid "Password:" -msgstr "Password:" - -#: skins/common/templates/authopenid/confirm_email.txt:8 -msgid "Please sign in here:" -msgstr "Puoi accedere al tuo account da qui:" - -#: skins/common/templates/authopenid/confirm_email.txt:11 -#: skins/common/templates/authopenid/email_validation.txt:13 -#, fuzzy -msgid "" -"Sincerely,\n" -"Q&A Forum Administrator" -msgstr "" -"Cordialmente,\n" -" l'Amministratore" - -#: skins/common/templates/authopenid/email_validation.txt:1 -msgid "Greetings from the Q&A forum" -msgstr "Benvenuto sul forum Q&A" - -#: skins/common/templates/authopenid/email_validation.txt:3 -msgid "To make use of the Forum, please follow the link below:" -msgstr "Per utilizzare il forum, clicca sul collegamento qui sotto:" - -#: skins/common/templates/authopenid/email_validation.txt:7 -msgid "Following the link above will help us verify your email address." -msgstr "" -"Cliccando sul collegamento qui sopra, verificherai il tuo indirizzo e-mail." - -#: skins/common/templates/authopenid/email_validation.txt:9 -#, fuzzy -msgid "" -"If you believe that this message was sent in mistake - \n" -"no further action is needed. Just ignore this email, we apologize\n" -"for any inconvenience" -msgstr "" -"Se hai ricevuto questo messaggio per errore, basta che tu ignori questa e-" -"mail. Ci scusiamo per il problema." - -#: skins/common/templates/authopenid/logout.html:3 -msgid "Logout" -msgstr "Logout" - -#: skins/common/templates/authopenid/logout.html:5 -msgid "You have successfully logged out" -msgstr "" - -#: skins/common/templates/authopenid/logout.html:7 -msgid "" -"However, you still may be logged in to your OpenID provider. Please logout " -"of your provider if you wish to do so." -msgstr "" - -#: skins/common/templates/authopenid/signin.html:4 -msgid "User login" -msgstr "Accesso utente" - -#: skins/common/templates/authopenid/signin.html:14 -#, python-format -msgid "" -"\n" -" Your answer to %(title)s %(summary)s will be posted once you log in\n" -" " -msgstr "" -"\n" -"<span class=\"strong big\">La tua risposta alla domanda </span> <i>\"<strong>" -"%(title)s</strong> %(summary)s...\"</i> <span class=\"strong big\">è stata " -"memorizzata e verrà pubblicata non appena ti registrerai.</span>" - -#: skins/common/templates/authopenid/signin.html:21 -#, python-format -msgid "" -"Your question \n" -" %(title)s %(summary)s will be posted once you log in\n" -" " -msgstr "" -"<span class=\"strong big\">La tua domanda</span> <i>\"<strong>%(title)s</" -"strong> %(summary)s...\"</i> <span class=\"strong big\">è stata memorizzata " -"e verrà pubblicata non appena ti registrerai.</span>" - -#: skins/common/templates/authopenid/signin.html:28 -msgid "" -"Choose your favorite service below to sign in using secure OpenID or similar " -"technology. Your external service password always stays confidential and you " -"don't have to rememeber or create another one." -msgstr "" - -#: skins/common/templates/authopenid/signin.html:31 -msgid "" -"It's a good idea to make sure that your existing login methods still work, " -"or add a new one. Please click any of the icons below to check/change or add " -"new login methods." -msgstr "" - -#: skins/common/templates/authopenid/signin.html:33 -msgid "" -"Please add a more permanent login method by clicking one of the icons below, " -"to avoid logging in via email each time." -msgstr "" - -#: skins/common/templates/authopenid/signin.html:37 -msgid "" -"Click on one of the icons below to add a new login method or re-validate an " -"existing one." -msgstr "" - -#: skins/common/templates/authopenid/signin.html:39 -msgid "" -"You don't have a method to log in right now, please add one or more by " -"clicking any of the icons below." -msgstr "" - -#: skins/common/templates/authopenid/signin.html:42 -#, fuzzy -msgid "" -"Please check your email and visit the enclosed link to re-connect to your " -"account" -msgstr "Per favore inserisci la tua password" - -#: skins/common/templates/authopenid/signin.html:89 -#, fuzzy -msgid "or enter your <span>user name and password</span>, then sign in" -msgstr "Per favore inserisci username e password" - -#: skins/common/templates/authopenid/signin.html:93 -#, fuzzy -msgid "Please, sign in" -msgstr "Puoi accedere al tuo account da qui:" - -#: skins/common/templates/authopenid/signin.html:100 -msgid "Login failed, please try again" -msgstr "" - -#: skins/common/templates/authopenid/signin.html:104 -#, fuzzy -msgid "Login or email" -msgstr "mai" - -#: skins/common/templates/authopenid/signin.html:108 utils/forms.py:169 -msgid "Password" -msgstr "Password" - -#: skins/common/templates/authopenid/signin.html:120 -msgid "To change your password - please enter the new one twice, then submit" -msgstr "" - -#: skins/common/templates/authopenid/signin.html:124 -#, fuzzy -msgid "New password" -msgstr "New password created" - -#: skins/common/templates/authopenid/signin.html:133 -#, fuzzy -msgid "Please, retype" -msgstr "per favore, digita di nuovo la password" - -#: skins/common/templates/authopenid/signin.html:157 -msgid "Here are your current login methods" -msgstr "" - -#: skins/common/templates/authopenid/signin.html:161 -#, fuzzy -msgid "provider" -msgstr "Utente approvato" - -#: skins/common/templates/authopenid/signin.html:162 -#, fuzzy -msgid "last used" -msgstr "ultimo accesso" - -#: skins/common/templates/authopenid/signin.html:163 -msgid "delete, if you like" -msgstr "" - -#: skins/common/templates/authopenid/signin.html:177 -#: skins/common/templates/question/answer_controls.html:13 -#: skins/common/templates/question/question_controls.html:4 -msgid "delete" -msgstr "cancella" - -#: skins/common/templates/authopenid/signin.html:179 -#, fuzzy -msgid "cannot be deleted" -msgstr "Account eliminato." - -#: skins/common/templates/authopenid/signin.html:192 -#, fuzzy -msgid "Still have trouble signing in?" -msgstr "Hai altre domande?" - -#: skins/common/templates/authopenid/signin.html:197 -#, fuzzy -msgid "Please, enter your email address below and obtain a new key" -msgstr "Per favore inserisci la tua password" - -#: skins/common/templates/authopenid/signin.html:199 -#, fuzzy -msgid "Please, enter your email address below to recover your account" -msgstr "Per favore inserisci la tua password" - -#: skins/common/templates/authopenid/signin.html:202 -#, fuzzy -msgid "recover your account via email" -msgstr "Scegli una nuova password" - -#: skins/common/templates/authopenid/signin.html:213 -msgid "Send a new recovery key" -msgstr "" - -#: skins/common/templates/authopenid/signin.html:215 -#, fuzzy -msgid "Recover your account via email" -msgstr "Scegli una nuova password" - -#: skins/common/templates/authopenid/signup_with_password.html:10 -#, fuzzy -msgid "Please register by clicking on any of the icons below" -msgstr "scegli una delle opzioni qui sopra" - -#: skins/common/templates/authopenid/signup_with_password.html:23 -#, fuzzy -msgid "or create a new user name and password here" -msgstr "Scegli nome utente e password" - -#: skins/common/templates/authopenid/signup_with_password.html:25 -msgid "Create login name and password" -msgstr "Scegli nome utente e password" - -#: skins/common/templates/authopenid/signup_with_password.html:26 -msgid "" -"<span class='strong big'>If you prefer, create your forum login name and \n" -"password here. However</span>, please keep in mind that we also support \n" -"<strong>OpenID</strong> login method. With <strong>OpenID</strong> you can \n" -"simply reuse your external login (e.g. Gmail or AOL) without ever sharing \n" -"your login details with anyone and having to remember yet another password." -msgstr "" - -#: skins/common/templates/authopenid/signup_with_password.html:41 -msgid "<strong>Receive periodic updates by email</strong>" -msgstr "" - -#: skins/common/templates/authopenid/signup_with_password.html:50 -msgid "" -"Please read and type in the two words below to help us prevent automated " -"account creation." -msgstr "" -"Riscrivi le due parole che leggi qui sotto. Questo serve a impedire la " -"creazione automatizzata di nuovi account." - -#: skins/common/templates/authopenid/signup_with_password.html:55 -msgid "or" -msgstr "oppure" - -#: skins/common/templates/authopenid/signup_with_password.html:56 -msgid "return to OpenID login" -msgstr "torna al login OpenID" - -#: skins/common/templates/avatar/add.html:3 -#, fuzzy -msgid "add avatar" -msgstr "" -"Come cambio la mia immagine personale (gravatar)? Che cos'è il gravatar?" - -#: skins/common/templates/avatar/add.html:5 -#, fuzzy -msgid "Change avatar" -msgstr "Cambia tag" - -#: skins/common/templates/avatar/add.html:6 -#: skins/common/templates/avatar/change.html:7 -#, fuzzy -msgid "Your current avatar: " -msgstr "Il tuo account è:" - -#: skins/common/templates/avatar/add.html:9 -#: skins/common/templates/avatar/change.html:11 -msgid "You haven't uploaded an avatar yet. Please upload one now." -msgstr "" - -#: skins/common/templates/avatar/add.html:13 -msgid "Upload New Image" -msgstr "" - -#: skins/common/templates/avatar/change.html:4 -#, fuzzy -msgid "change avatar" -msgstr "i cambiamenti sono stati salvati" - -#: skins/common/templates/avatar/change.html:17 -msgid "Choose new Default" -msgstr "" - -#: skins/common/templates/avatar/change.html:22 -#, fuzzy -msgid "Upload" -msgstr "upload/" - -#: skins/common/templates/avatar/confirm_delete.html:2 -#, fuzzy -msgid "delete avatar" -msgstr "ha cancellato una risposta" - -#: skins/common/templates/avatar/confirm_delete.html:4 -msgid "Please select the avatars that you would like to delete." -msgstr "" - -#: skins/common/templates/avatar/confirm_delete.html:6 -#, python-format -msgid "" -"You have no avatars to delete. Please <a href=\"%(avatar_change_url)s" -"\">upload one</a> now." -msgstr "" - -#: skins/common/templates/avatar/confirm_delete.html:12 -#, fuzzy -msgid "Delete These" -msgstr "ha cancellato una risposta" - -#: skins/common/templates/question/answer_controls.html:2 -#, fuzzy -msgid "swap with question" -msgstr "Rispondi alla domanda" - -#: skins/common/templates/question/answer_controls.html:7 -msgid "permanent link" -msgstr "link permanente" - -#: skins/common/templates/question/answer_controls.html:8 -#: skins/default/templates/widgets/answer_edit_tips.html:45 -#: skins/default/templates/widgets/question_edit_tips.html:40 -msgid "link" -msgstr "collegamento" - -#: skins/common/templates/question/answer_controls.html:13 -#: skins/common/templates/question/question_controls.html:4 -msgid "undelete" -msgstr "riattiva domanda" - -#: skins/common/templates/question/answer_controls.html:19 -#, fuzzy -msgid "remove offensive flag" -msgstr "Visualizzare i flag inappropriati" - -#: skins/common/templates/question/answer_controls.html:21 -#: skins/common/templates/question/question_controls.html:16 -#, fuzzy -msgid "remove flag" -msgstr "vedi tutti i tag" - -#: skins/common/templates/question/answer_controls.html:26 -#: skins/common/templates/question/answer_controls.html:35 -#: skins/common/templates/question/question_controls.html:14 -#: skins/common/templates/question/question_controls.html:20 -#: skins/common/templates/question/question_controls.html:27 -msgid "" -"report as offensive (i.e containing spam, advertising, malicious text, etc.)" -msgstr "segnala questo messaggio come offensivo (spam, pubblicità, insulti...)" - -#: skins/common/templates/question/answer_controls.html:28 -#: skins/common/templates/question/answer_controls.html:37 -#: skins/common/templates/question/question_controls.html:22 -#: skins/common/templates/question/question_controls.html:29 -msgid "flag offensive" -msgstr "segnala come offensivo" - -#: skins/common/templates/question/answer_controls.html:41 -#: skins/common/templates/question/question_controls.html:36 -#: skins/default/templates/macros.html:311 -#: skins/default/templates/revisions.html:38 -#: skins/default/templates/revisions.html:41 -msgid "edit" -msgstr "modifica" - -#: skins/common/templates/question/answer_vote_buttons.html:6 -#: skins/default/templates/user_profile/user_stats.html:24 -msgid "this answer has been selected as correct" -msgstr "questa risposta è stata accettata dall'autore" - -#: skins/common/templates/question/answer_vote_buttons.html:8 -#, fuzzy -msgid "mark this answer as correct (click again to undo)" -msgstr "" -"segna questa risposta tra le preferite (clicca una seconda volta per " -"annullare)" - -#: skins/common/templates/question/closed_question_info.html:2 -#, fuzzy, python-format -msgid "" -"The question has been closed for the following reason <b>\"%(close_reason)s" -"\"</b> <i>by" -msgstr "" -"Questa domanda è stata chiusa per il seguente motivo: \"%(close_reason)s\" da" - -#: skins/common/templates/question/closed_question_info.html:4 -#, python-format -msgid "close date %(closed_at)s" -msgstr "data di chiusura %(closed_at)s" - -#: skins/common/templates/question/question_controls.html:6 -msgid "reopen" -msgstr "riapri" - -#: skins/common/templates/question/question_controls.html:8 -#: skins/default/templates/user_profile/user_inbox.html:67 -msgid "close" -msgstr "chiudi" - -#: skins/common/templates/question/question_controls.html:35 -msgid "retag" -msgstr "modifica i tag" - -#: skins/common/templates/widgets/edit_post.html:22 -#, fuzzy -msgid ", one of these is required" -msgstr "campo obbligatorio" - -#: skins/common/templates/widgets/edit_post.html:31 -#: skins/common/templates/widgets/edit_post.html:36 -#, fuzzy -msgid "tags:" -msgstr "tag" - -#: skins/common/templates/widgets/edit_post.html:32 -msgid "(required)" -msgstr "(campo obbligatorio)" - -#: skins/common/templates/widgets/edit_post.html:58 -msgid "Toggle the real time Markdown editor preview" -msgstr "attiva/disattiva l'anteprima del codice Markdown" - -#: skins/common/templates/widgets/edit_post.html:60 -#: skins/default/templates/answer_edit.html:61 -#: skins/default/templates/answer_edit.html:64 -#: skins/default/templates/ask.html:49 skins/default/templates/ask.html:52 -#: skins/default/templates/question_edit.html:73 -#: skins/default/templates/question_edit.html:76 -#: skins/default/templates/question/javascript.html:85 -#: skins/default/templates/question/javascript.html:88 -msgid "hide preview" -msgstr "nascondi anteprima" - -#: skins/common/templates/widgets/related_tags.html:3 -#: skins/default/templates/tags.html:4 -msgid "Tags" -msgstr "" +#: models/user.py:563 +msgid "Please give a list of valid email addresses." +msgstr "inserisci un indirizzo e-mail valido" -#: skins/common/templates/widgets/tag_selector.html:4 -msgid "Interesting tags" -msgstr "Tag preferiti" +#: models/user.py:573 +msgid "Please give a list of valid email domain names." +msgstr "inserisci un dominio e-mail valido" -#: skins/common/templates/widgets/tag_selector.html:19 -#: skins/common/templates/widgets/tag_selector.html:36 -#, fuzzy -msgid "add" -msgstr "Aggiungi" +#: models/widgets.py:34 +msgid "css for the widget" +msgstr "CSS per il widget" -#: skins/common/templates/widgets/tag_selector.html:21 -msgid "Ignored tags" -msgstr "Tag ignorati" - -#: skins/common/templates/widgets/tag_selector.html:38 -#, fuzzy -msgid "Display tag filter" -msgstr "Scegli il tag filtro per l'email" - -#: skins/default/templates/404.jinja.html:3 -#: skins/default/templates/404.jinja.html:10 +#: templates/404.jinja.html:3 templates/404.jinja.html.py:10 msgid "Page not found" -msgstr "" +msgstr "Pagina non trovata" -#: skins/default/templates/404.jinja.html:13 +#: templates/404.jinja.html:13 msgid "Sorry, could not find the page you requested." msgstr "Pagina non trovata" -#: skins/default/templates/404.jinja.html:15 +#: templates/404.jinja.html:15 msgid "This might have happened for the following reasons:" msgstr "Possibili motivi:" -#: skins/default/templates/404.jinja.html:17 +#: templates/404.jinja.html:17 msgid "this question or answer has been deleted;" msgstr "questa domanda o risposta è stata cancellata;" -#: skins/default/templates/404.jinja.html:18 +#: templates/404.jinja.html:18 msgid "url has error - please check it;" msgstr "l'indirizzo è errato — controllalo;" -#: skins/default/templates/404.jinja.html:19 +#: templates/404.jinja.html:19 msgid "" "the page you tried to visit is protected or you don't have sufficient " "points, see" @@ -4515,216 +4559,214 @@ msgstr "" "la pagina che stai cercando di visitare è protetta oppure non hai " "sufficienti punti reputazione, vedi" -#: skins/default/templates/404.jinja.html:19 -#: skins/default/templates/widgets/footer.html:39 +#: templates/404.jinja.html:19 templates/widgets/footer.html:39 msgid "faq" msgstr "domande frequenti" -#: skins/default/templates/404.jinja.html:20 +#: templates/404.jinja.html:20 msgid "if you believe this error 404 should not have occured, please" msgstr "se credi che questo messaggio di errore 404 sia inappropriato," -#: skins/default/templates/404.jinja.html:21 +#: templates/404.jinja.html:21 msgid "report this problem" msgstr "per favore segnala questo problema" -#: skins/default/templates/404.jinja.html:30 -#: skins/default/templates/500.jinja.html:11 +#: templates/404.jinja.html:30 templates/500.jinja.html:11 msgid "back to previous page" msgstr "torna alla pagina precedente" -#: skins/default/templates/404.jinja.html:31 -#: skins/default/templates/widgets/scope_nav.html:6 +#: templates/404.jinja.html:31 templates/widgets/scope_nav.html:6 msgid "see all questions" msgstr "vedi tutte le domande" -#: skins/default/templates/404.jinja.html:32 +#: templates/404.jinja.html:32 msgid "see all tags" msgstr "vedi tutti i tag" -#: skins/default/templates/500.jinja.html:3 -#: skins/default/templates/500.jinja.html:5 +#: templates/500.jinja.html:3 templates/500.jinja.html.py:5 msgid "Internal server error" -msgstr "" +msgstr "Errore interno del server" -#: skins/default/templates/500.jinja.html:8 +#: templates/500.jinja.html:8 msgid "system error log is recorded, error will be fixed as soon as possible" -msgstr "questo errore è stato registrato, sarà risolto al più presto possibile" +msgstr "" +"questo errore è stato registrato, sarà risolto al più presto possibile" -#: skins/default/templates/500.jinja.html:9 +#: templates/500.jinja.html:9 msgid "please report the error to the site administrators if you wish" msgstr "puoi segnalare tu stesso questo errore agli amministratori del sito" -#: skins/default/templates/500.jinja.html:12 +#: templates/500.jinja.html:12 msgid "see latest questions" msgstr "vedi le domande recenti" -#: skins/default/templates/500.jinja.html:13 +#: templates/500.jinja.html:13 msgid "see tags" msgstr "vedi i tag" -#: skins/default/templates/answer_edit.html:4 -#: skins/default/templates/answer_edit.html:10 +#: templates/answer_edit.html:4 templates/answer_edit.html.py:10 msgid "Edit answer" msgstr "Modifica risposta" -#: skins/default/templates/answer_edit.html:10 -#: skins/default/templates/question_edit.html:9 -#: skins/default/templates/question_retag.html:5 -#: skins/default/templates/revisions.html:7 +#: templates/answer_edit.html:10 templates/question_edit.html:9 +#: templates/question_retag.html:5 templates/revisions.html:7 msgid "back" msgstr "indietro" -#: skins/default/templates/answer_edit.html:14 +#: templates/answer_edit.html:14 msgid "revision" msgstr "revisione" -#: skins/default/templates/answer_edit.html:17 -#: skins/default/templates/question_edit.html:16 -msgid "select revision" -msgstr "scegli revisione" - -#: skins/default/templates/answer_edit.html:24 -#: skins/default/templates/question_edit.html:35 +#: templates/answer_edit.html:35 templates/question_edit.html:45 msgid "Save edit" msgstr "Salva modifica" -#: skins/default/templates/answer_edit.html:64 -#: skins/default/templates/ask.html:52 -#: skins/default/templates/question_edit.html:76 -#: skins/default/templates/question/javascript.html:88 +#: templates/answer_edit.html:36 templates/close.html:16 +#: templates/feedback.html:64 templates/question_edit.html:46 +#: templates/question_retag.html:22 templates/reopen.html:28 +#: templates/subscribe_for_tags.html:16 +#: templates/authopenid/changeemail.html:51 +#: templates/user_profile/reject_post_dialog.html:36 +#: templates/user_profile/reject_post_dialog.html:74 +#: templates/user_profile/reject_post_dialog.html:104 +#: templates/user_profile/user_edit.html:110 +msgid "Cancel" +msgstr "Annulla" + +#: templates/answer_edit.html:74 templates/answer_edit.html.py:77 +#: templates/ask.html:54 templates/ask.html.py:57 +#: templates/question_edit.html:85 templates/question_edit.html.py:88 +#: templates/question/javascript.html:95 templates/question/javascript.html:98 +#: templates/widgets/edit_post.html:83 +msgid "hide preview" +msgstr "nascondi anteprima" + +#: templates/answer_edit.html:77 templates/ask.html:57 +#: templates/question_edit.html:88 templates/question/javascript.html:98 msgid "show preview" msgstr "mostra anteprima" -#: skins/default/templates/ask.html:4 -#: skins/default/templates/widgets/ask_button.html:5 -#: skins/default/templates/widgets/ask_form.html:43 -#, fuzzy +#: templates/ask.html:4 templates/widgets/ask_button.html:8 +#: templates/widgets/ask_form.html:49 msgid "Ask Your Question" -msgstr "Chiedi" +msgstr "Fai la tua domanda" -#: skins/default/templates/badge.html:5 skins/default/templates/badge.html:9 -#: skins/default/templates/user_profile/user_recent.html:19 -#: skins/default/templates/user_profile/user_stats.html:108 -#, fuzzy, python-format +#: templates/badge.html:5 templates/badge.html.py:9 +#: templates/user_profile/user_recent.html:20 +#: templates/user_profile/user_stats.html:120 +#, python-format msgid "%(name)s" -msgstr "il %(date)s" +msgstr "%(name)s" -#: skins/default/templates/badge.html:5 +#: templates/badge.html:5 msgid "Badge" msgstr "Medaglia" -#: skins/default/templates/badge.html:7 -#, fuzzy, python-format +#: templates/badge.html:7 +#, python-format msgid "Badge \"%(name)s\"" -msgstr "il %(date)s" +msgstr "Medaglia \"%(name)s\"" -#: skins/default/templates/badge.html:9 -#: skins/default/templates/user_profile/user_recent.html:17 -#: skins/default/templates/user_profile/user_stats.html:106 -#, fuzzy, python-format +#: templates/badge.html:9 templates/user_profile/user_recent.html:18 +#: templates/user_profile/user_stats.html:118 +#, python-format msgid "%(description)s" -msgstr "notifiche" +msgstr "%(description)s" -#: skins/default/templates/badge.html:14 +#: templates/badge.html:14 msgid "user received this badge:" msgid_plural "users received this badge:" msgstr[0] "utente ha guadagnato questa medaglia:" msgstr[1] "utenti hanno guadagnato questa medaglia:" -#: skins/default/templates/badges.html:3 skins/default/templates/badges.html:5 +#: templates/badges.html:3 templates/badges.html.py:5 msgid "Badges" msgstr "Medaglie" -#: skins/default/templates/badges.html:7 +#: templates/badges.html:7 msgid "Community gives you awards for your questions, answers and votes." msgstr "" -"Il tuo contributo a questa comunità, attraverso domande, risposte e voti, " +"Il tuo contributo a questa comunità attraverso domande, risposte e voti, " "viene premiato con delle medaglie." -#: skins/default/templates/badges.html:8 -#, fuzzy, python-format +#: templates/badges.html:8 +#, python-format msgid "" "Below is the list of available badges and number \n" " of times each type of badge has been awarded. Have ideas about fun \n" -"badges? Please, give us your <a href='%%(feedback_faq_url)s'>feedback</a>\n" +"badges? Please, give us your <a href='%(feedback_faq_url)s'>feedback</a>\n" msgstr "" -"Qui sotto trovi una lista delle medaglie disponibili, con indicato il numero " -"di persone che le hanno ottenute. Hai qualche idea per delle nuove medaglie? " -"<a href='%(feedback_faq_url)s'>Proponila</a>" +"Qui sotto trovi una lista delle medaglie disponibili, con indicato il numero" +" di persone che le hanno ottenute. Hai qualche idea per delle nuove " +"medaglie? <a href='%(feedback_faq_url)s'>Proponila</a>\n" -#: skins/default/templates/badges.html:36 +#: templates/badges.html:36 msgid "Community badges" msgstr "Tipi di medaglie " -#: skins/default/templates/badges.html:38 +#: templates/badges.html:38 msgid "gold badge: the highest honor and is very rare" -msgstr "" +msgstr "Medaglia d'oro: il più alto onore ed è molto rara" -#: skins/default/templates/badges.html:41 +#: templates/badges.html:41 msgid "" -"Gold badge is the highest award in this community. To obtain it have to " -"show \n" +"Gold badge is the highest award in this community. To obtain it you have to show \n" "profound knowledge and ability in addition to your active participation." msgstr "" +"La medaglia d'oro è il premio più alto in questa comunità. Per ottenerla " +"devi mostrare una profonda conoscenza e capacità, oltre che una " +"partecipazione attiva." -#: skins/default/templates/badges.html:47 +#: templates/badges.html:47 templates/badges.html.py:51 msgid "" "silver badge: occasionally awarded for the very high quality contributions" msgstr "" +"Medaglia d'argento: occasionalmente assegnata per i contributi di alta " +"qualità" -#: skins/default/templates/badges.html:51 -msgid "" -"msgid \"silver badge: occasionally awarded for the very high quality " -"contributions" -msgstr "" - -#: skins/default/templates/badges.html:54 -#: skins/default/templates/badges.html:58 +#: templates/badges.html:54 templates/badges.html.py:58 msgid "bronze badge: often given as a special honor" msgstr "Medaglie di bronzo: date anche come riconoscimento speciale" -#: skins/default/templates/close.html:3 skins/default/templates/close.html:5 +#: templates/close.html:3 templates/close.html.py:5 msgid "Close question" msgstr "Chiudi domanda" -#: skins/default/templates/close.html:6 +#: templates/close.html:6 msgid "Close the question" msgstr "Chiudi la domanda" -#: skins/default/templates/close.html:11 +#: templates/close.html:11 msgid "Reasons" msgstr "Motivo:" -#: skins/default/templates/close.html:15 +#: templates/close.html:15 msgid "OK to close" msgstr "Chiudi" -#: skins/default/templates/faq_static.html:3 -#: skins/default/templates/faq_static.html:5 -#: skins/default/templates/widgets/answer_edit_tips.html:20 -#: skins/default/templates/widgets/question_edit_tips.html:16 views/meta.py:61 +#: templates/faq_static.html:3 templates/faq_static.html.py:5 +#: templates/widgets/answer_edit_tips.html:20 +#: templates/widgets/question_edit_tips.html:16 views/meta.py:68 msgid "FAQ" -msgstr "" +msgstr "FAQ" -#: skins/default/templates/faq_static.html:5 +#: templates/faq_static.html:5 msgid "Frequently Asked Questions " msgstr "Domande frequenti" -#: skins/default/templates/faq_static.html:6 +#: templates/faq_static.html:6 msgid "What kinds of questions can I ask here?" msgstr "Che tipo di domande posso porre qui?" -#: skins/default/templates/faq_static.html:7 +#: templates/faq_static.html:7 msgid "" -"Most importanly - questions should be <strong>relevant</strong> to this " +"Most importantly - questions should be <strong>relevant</strong> to this " "community." msgstr "" -"La cosa più importante — le domande devono essere " -"<strong>interessanti</strong> per gli altri" +"La cosa più importante - le domande devono essere " +"<strong>interessanti</strong> per gli altri." -#: skins/default/templates/faq_static.html:8 -#, fuzzy +#: templates/faq_static.html:8 msgid "" "Before you ask - please make sure to search for a similar question. You can " "search questions by their title or tags." @@ -4732,12 +4774,11 @@ msgstr "" "Prima di porre una domanda, usa la funzione di ricerca per assicurarti che " "non sia già stata posta" -#: skins/default/templates/faq_static.html:10 -#, fuzzy +#: templates/faq_static.html:10 msgid "What kinds of questions should be avoided?" msgstr "Che domande devo evitare?" -#: skins/default/templates/faq_static.html:11 +#: templates/faq_static.html:11 msgid "" "Please avoid asking questions that are not relevant to this community, too " "subjective and argumentative." @@ -4745,32 +4786,35 @@ msgstr "" "Evita domande che sono troppo vaghe, polemiche o poco interessanti per gli " "altri" -#: skins/default/templates/faq_static.html:13 +#: templates/faq_static.html:13 msgid "What should I avoid in my answers?" msgstr "Cosa devo evitare nelle risposte?" -#: skins/default/templates/faq_static.html:14 +#: templates/faq_static.html:14 msgid "" "is a <strong>question and answer</strong> site - <strong>it is not a " "discussion group</strong>. Please avoid holding debates in your answers as " "they tend to dilute the essense of questions and answers. For the brief " "discussions please use commenting facility." msgstr "" +"è un sito <strong>di domande e risposte</strong> - <strong>non è un gruppo " +"di discussione</strong>. Si prega di evitare dibattiti nelle vostre risposte" +" in quanto tendono a togliere l'essenza delle domande e risposte. Per le " +"brevi discussioni si prega di utilizzare i commenti." -#: skins/default/templates/faq_static.html:15 +#: templates/faq_static.html:15 msgid "Who moderates this community?" msgstr "Chi sono i moderatori?" -#: skins/default/templates/faq_static.html:16 +#: templates/faq_static.html:16 msgid "The short answer is: <strong>you</strong>." msgstr "In breve: <strong>tu</strong>." -#: skins/default/templates/faq_static.html:17 +#: templates/faq_static.html:17 msgid "This website is moderated by the users." msgstr "Questo sito è moderato dai suoi utenti." -#: skins/default/templates/faq_static.html:18 -#, fuzzy +#: templates/faq_static.html:18 msgid "" "Karma system allows users to earn rights to perform a variety of moderation " "tasks" @@ -4778,910 +4822,1915 @@ msgstr "" "Il sistema dei punti reputazione consente agli utenti di guadagnare il " "diritto di effettuare le varie operazioni di moderazione." -#: skins/default/templates/faq_static.html:20 -#, fuzzy +#: templates/faq_static.html:20 msgid "How does karma system work?" msgstr "Come funzionano i punti reputazione?" -#: skins/default/templates/faq_static.html:21 +#: templates/faq_static.html:21 msgid "" "When a question or answer is upvoted, the user who posted them will gain " "some points, which are called \\\"karma points\\\". These points serve as a " "rough measure of the community trust to him/her. Various moderation tasks " "are gradually assigned to the users based on those points." msgstr "" +"Quando una domanda o risposta è votata positivamente, l'utente che ha " +"postato otterrà alcuni punti, che sono chiamati \\\"punti karma\\\". Questi " +"punti servono come una misura approssimativa della fiducia che gli riserva " +"la comunità. Diverse attività di moderazione sono gradualmente assegnate " +"agli utenti basandosi su questi punti." -#: skins/default/templates/faq_static.html:22 +#: templates/faq_static.html:22 #, python-format msgid "" "For example, if you ask an interesting question or give a helpful answer, " "your input will be upvoted. On the other hand if the answer is misleading - " -"it will be downvoted. Each vote in favor will generate <strong>" -"%(REP_GAIN_FOR_RECEIVING_UPVOTE)s</strong> points, each vote against will " -"subtract <strong>%(REP_LOSS_FOR_RECEIVING_DOWNVOTE)s</strong> points. There " -"is a limit of <strong>%(MAX_REP_GAIN_PER_USER_PER_DAY)s</strong> points that " -"can be accumulated for a question or answer per day. The table below " -"explains reputation point requirements for each type of moderation task." +"it will be downvoted. Each vote in favor will generate " +"<strong>%(REP_GAIN_FOR_RECEIVING_UPVOTE)s</strong> points, each vote against" +" will subtract <strong>%(REP_LOSS_FOR_RECEIVING_DOWNVOTE)s</strong> points. " +"There is a limit of <strong>%(MAX_REP_GAIN_PER_USER_PER_DAY)s</strong> " +"points that can be accumulated for a question or answer per day. The table " +"below explains reputation point requirements for each type of moderation " +"task." msgstr "" "Per esempio, se poni una domanda interessante o dai una risposta utile, gli " "utenti ti daranno dei voti positivi. D'altro canto, se la risposta è " "sbagliata, gli utenti ti daranno dei voti negativi. Ogni voto a tuo favore " "ti procura <strong>%(REP_GAIN_FOR_RECEIVING_UPVOTE)s</strong> punti " -"reputazione; ogni voto contro di te ti fa perdere <strong>" -"%(REP_LOSS_FOR_RECEIVING_DOWNVOTE)s</strong> punti reputazione. Puoi " -"guadagnare un massimo di <strong>%(MAX_REP_GAIN_PER_USER_PER_DAY)s</strong> " -"punti al giorno per ogni tua domanda o risposta. Nella tabella qui sotto " +"reputazione; ogni voto contro di te ti fa perdere " +"<strong>%(REP_LOSS_FOR_RECEIVING_DOWNVOTE)s</strong> punti reputazione. Puoi" +" guadagnare un massimo di <strong>%(MAX_REP_GAIN_PER_USER_PER_DAY)s</strong>" +" punti al giorno per ogni tua domanda o risposta. Nella tabella qui sotto " "trovi quanti punti reputazione sono necessari per ogni tipo di potere di " "moderazione." -#: skins/default/templates/faq_static.html:32 -#: skins/default/templates/user_profile/user_votes.html:13 +#: templates/faq_static.html:32 templates/user_profile/user_votes.html:14 msgid "upvote" msgstr "votare a favore" -#: skins/default/templates/faq_static.html:36 +#: templates/faq_static.html:36 msgid "add comments" msgstr "aggiungere commenti" -#: skins/default/templates/faq_static.html:40 -#: skins/default/templates/user_profile/user_votes.html:15 +#: templates/faq_static.html:40 templates/user_profile/user_votes.html:16 msgid "downvote" msgstr "votare contro" -#: skins/default/templates/faq_static.html:43 -#, fuzzy +#: templates/faq_static.html:43 msgid " accept own answer to own questions" -msgstr "Prima risposta accettata a una tua domanda" +msgstr "accettare la propria risposta alle proprie domande" -#: skins/default/templates/faq_static.html:47 +#: templates/faq_static.html:47 msgid "open and close own questions" msgstr "aprire e chiudere le proprie domande" -#: skins/default/templates/faq_static.html:51 +#: templates/faq_static.html:51 msgid "retag other's questions" msgstr "modificare i tag delle domande altrui" -#: skins/default/templates/faq_static.html:56 +#: templates/faq_static.html:56 msgid "edit community wiki questions" msgstr "modificare le 'domande comunitarie'" -#: skins/default/templates/faq_static.html:61 -#, fuzzy +#: templates/faq_static.html:61 msgid "edit any answer" msgstr "modificare ogni risposta" -#: skins/default/templates/faq_static.html:65 -#, fuzzy +#: templates/faq_static.html:65 msgid "delete any comment" msgstr "cancellare commenti altrui" -#: skins/default/templates/faq_static.html:69 +#: templates/faq_static.html:69 msgid "How to change my picture (gravatar) and what is gravatar?" -msgstr "" +msgstr "Come cambiare la mia foto (gravatar) e che cosa è gravatar?" -#: skins/default/templates/faq_static.html:70 +#: templates/faq_static.html:70 msgid "" "<p>The picture that appears on the users profiles is called " -"<strong>gravatar</strong> (which means <strong>g</strong>lobally <strong>r</" -"strong>ecognized <strong>avatar</strong>).</p><p>Here is how it works: a " -"<strong>cryptographic key</strong> (unbreakable code) is calculated from " -"your email address. You upload your picture (or your favorite alter ego " -"image) the website <a href='http://gravatar.com'><strong>gravatar.com</" -"strong></a> from where we later retreive your image using the key.</" -"p><p>This way all the websites you trust can show your image next to your " -"posts and your email address remains private.</p><p>Please " -"<strong>personalize your account</strong> with an image - just register at " -"<a href='http://gravatar.com'><strong>gravatar.com</strong></a> (just please " -"be sure to use the same email address that you used to register with us). " +"<strong>gravatar</strong> (which means <strong>g</strong>lobally " +"<strong>r</strong>ecognized <strong>avatar</strong>).</p><p>Here is how it " +"works: a <strong>cryptographic key</strong> (unbreakable code) is calculated" +" from your email address. You upload your picture (or your favorite alter " +"ego image) the website <a " +"href='http://gravatar.com'><strong>gravatar.com</strong></a> from where we " +"later retreive your image using the key.</p><p>This way all the websites you" +" trust can show your image next to your posts and your email address remains" +" private.</p><p>Please <strong>personalize your account</strong> with an " +"image - just register at <a " +"href='http://gravatar.com'><strong>gravatar.com</strong></a> (just please be" +" sure to use the same email address that you used to register with us). " "Default image that looks like a kitchen tile is generated automatically.</p>" msgstr "" - -#: skins/default/templates/faq_static.html:71 +"<p>L'immagine che appare sui profili utenti viene chiamata " +"<strong>gravatar</strong> (che significa <strong>g</strong> lobally " +"<strong>r</strong> ecognized <strong>avatar</strong>).</p><p>Ecco come " +"funziona: una <strong>chiave crittografica</strong> (codice infrangibile) è " +"calcolata dal tuo indirizzo e-mail. Caricate foto (o la vostra immagine " +"preferita alter ego) nel sito <a href='http://gravatar.com'> " +"<strong>gravatar.com</strong></a>, da dove andiamo poi a prelevare " +"l'immagine utilizzando la chiave.</p><p>In questo modo tutti possono " +"mostrare l'immagine accanto al tuo post mentre il tuo indirizzo e-mail resta" +" privato.</p><p>Per favore <strong>personalizza il tuo account</strong> con " +"un'immagine - basta registrarsi a <a href='http://gravatar.com'> " +"<strong>gravatar.com</strong></a> (si prega di assicurarsi di utilizzare lo " +"stesso indirizzo email che hai utilizzato per registrarti con noi). L' " +"immagine di default che si presenta come una piastrella cucina viene " +"generata automaticamente.</p>" + +#: templates/faq_static.html:71 msgid "To register, do I need to create new password?" msgstr "Devo scegliere una password per registrarmi?" -#: skins/default/templates/faq_static.html:72 -#, fuzzy +#: templates/faq_static.html:72 msgid "" "No, you don't have to. You can login through any service that supports " -"OpenID, e.g. Google, Yahoo, AOL, etc.\"" +"OpenID, e.g. Google, Yahoo, AOL, etc." msgstr "" "No, non è necessario. Puoi accedere attraverso il tuo account su un " "qualunque sito che supporta OpenID, come Google, Yahoo, AOL, eccetera." -#: skins/default/templates/faq_static.html:73 -#, fuzzy +#: templates/faq_static.html:73 msgid "\"Login now!\"" msgstr "Accedi ora!" -#: skins/default/templates/faq_static.html:75 +#: templates/faq_static.html:75 msgid "Why other people can edit my questions/answers?" msgstr "Perché le altre persone possono modificare quello che scrivo?" -#: skins/default/templates/faq_static.html:76 +#: templates/faq_static.html:76 msgid "Goal of this site is..." msgstr "" -"Lo scopo di questo sito è di creare una comunità dedita allo scambio di idee " -"e alla creazione di contenuti il più possibile utili alla comunità stessa." +"Lo scopo di questo sito è di creare una comunità dedita allo scambio di idee" +" e alla creazione di contenuti il più possibile utili alla comunità stessa." -#: skins/default/templates/faq_static.html:76 +#: templates/faq_static.html:76 msgid "" "So questions and answers can be edited like wiki pages by experienced users " "of this site and this improves the overall quality of the knowledge base " "content." msgstr "" "Perciò domande e risposte possono essere modificate come pagine di uno wiki " -"dagli utenti più esperti; questo contribuisce a migliorare la qualità totale " -"dei contenuti in questo sito." +"dagli utenti più esperti; questo contribuisce a migliorare la qualità totale" +" dei contenuti in questo sito." -#: skins/default/templates/faq_static.html:77 +#: templates/faq_static.html:77 msgid "If this approach is not for you, we respect your choice." msgstr "Se questo approccio non fa per te, rispettiamo la tua scelta." -#: skins/default/templates/faq_static.html:79 +#: templates/faq_static.html:79 msgid "Still have questions?" msgstr "Hai altre domande?" -#: skins/default/templates/faq_static.html:80 -#, fuzzy, python-format +#: templates/faq_static.html:80 +#, python-format msgid "" -"Please <a href='%%(ask_question_url)s'>ask</a> your question, help make our " +"Please <a href='%(ask_question_url)s'>ask</a> your question, help make our " "community better!" msgstr "" "<a href='%(ask_question_url)s'>Ponile</a> tu stesso, e contribuisci a " "migliorare questo sito!" -#: skins/default/templates/feedback.html:3 +#: templates/feedback.html:3 msgid "Feedback" msgstr "Contatti" -#: skins/default/templates/feedback.html:5 +#: templates/feedback.html:5 msgid "Give us your feedback!" msgstr "Dicci cosa pensi di questo sito!" -#: skins/default/templates/feedback.html:14 -#, fuzzy, python-format +#: templates/feedback.html:14 +#, python-format msgid "" "\n" -" <span class='big strong'>Dear %(user_name)s</span>, we look forward " -"to hearing your feedback. \n" +" <span class='big strong'>Dear %(user_name)s</span>, we look forward to hearing your feedback. \n" " Please type and send us your message below.\n" " " msgstr "" "\n" -"<span class='big strong'>Caro %(user_name)s</span>, ci interessa moltissimo " -"sentire la tua opinione. Scrivi i tuoi commenti qui sotto." +"<span class='big strong'>Caro %(user_name)s</span>, ci interessa moltissimo sentire la tua opinione. Scrivi i tuoi commenti qui sotto." -#: skins/default/templates/feedback.html:21 -#, fuzzy +#: templates/feedback.html:21 msgid "" "\n" -" <span class='big strong'>Dear visitor</span>, we look forward to " -"hearing your feedback.\n" +" <span class='big strong'>Dear visitor</span>, we look forward to hearing your feedback.\n" " Please type and send us your message below.\n" " " msgstr "" "\n" -"<span class='big strong'>Caro visitatore</span>, ci interessa moltissimo la " -"tua opinione. Scrivi i tuoi commenti qui sotto." +"<span class='big strong'>Caro visitatore</span>, ci interessa moltissimo la tua opinione. Scrivi i tuoi commenti qui sotto." -#: skins/default/templates/feedback.html:30 +#: templates/feedback.html:30 msgid "(to hear from us please enter a valid email or check the box below)" msgstr "" +"(per ascoltare da noi si prega di inserire un indirizzo email valido o la " +"casella qui sotto)" -#: skins/default/templates/feedback.html:37 -#: skins/default/templates/feedback.html:46 +#: templates/feedback.html:37 templates/feedback.html.py:46 msgid "(this field is required)" msgstr "(campo obbligatorio)" -#: skins/default/templates/feedback.html:55 +#: templates/feedback.html:55 msgid "(Please solve the captcha)" -msgstr "" +msgstr "(Si prega di risolvere il captcha)" -#: skins/default/templates/feedback.html:63 +#: templates/feedback.html:63 msgid "Send Feedback" msgstr "Invia" -#: skins/default/templates/feedback_email.txt:2 -#, fuzzy, python-format +#: templates/groups.html:3 templates/groups.html.py:6 +#: templates/question/sidebar.html:119 +msgid "Groups" +msgstr "Gruppi" + +#: templates/groups.html:11 +msgid "All groups" +msgstr "Tutti i gruppi" + +#: templates/groups.html:13 +msgid "all groups" +msgstr "tutti i gruppi" + +#: templates/groups.html:15 +msgid "My groups" +msgstr "I miei gruppi" + +#: templates/groups.html:17 +msgid "my groups" +msgstr "i miei gruppi" + +#: templates/groups.html:25 msgid "" -"\n" -"Hello, this is a %(site_title)s forum feedback message.\n" +"Tip: to create a new group - please go to some user profile and add the new " +"group there. That user will be the first member of the group" msgstr "" -"\n" -"Salve, questo è un messaggio di notifica del forum %(site_title)s.\n" +"Suggerimento: per creare un nuovo gruppo - vai ad un profilo utente e " +"aggiungi il nuovo gruppo. L'utente sarà il primo membro del gruppo" + +#: templates/groups.html:30 +msgid "Group" +msgstr "Gruppo" -#: skins/default/templates/help.html:2 skins/default/templates/help.html:4 +#: templates/groups.html:31 +msgid "Number of members" +msgstr "Numero di membri" + +#: templates/help.html:2 templates/help.html.py:4 msgid "Help" -msgstr "" +msgstr "Guida" -#: skins/default/templates/help.html:7 -#, fuzzy, python-format +#: templates/help.html:7 +#, python-format msgid "Welcome %(username)s," -msgstr "risposte per %(username)s" +msgstr "Benvenuto %(username)s," -#: skins/default/templates/help.html:9 +#: templates/help.html:9 msgid "Welcome," -msgstr "" +msgstr "Benvenuto," -#: skins/default/templates/help.html:13 +#: templates/help.html:13 #, python-format msgid "Thank you for using %(app_name)s, here is how it works." msgstr "" +"Grazie per aver scelto di utilizzare %(app_name)s! Ecco come funziona." -#: skins/default/templates/help.html:16 +#: templates/help.html:16 +msgid "How questions, answers and comments work" +msgstr "Come funzionano domande, risposte e commenti" + +#: templates/help.html:18 msgid "" "This site is for asking and answering questions, not for open-ended " "discussions." msgstr "" +"Questo sito è stato creato per chiedere e rispondere a domande, non per " +"discussioni aperte." -#: skins/default/templates/help.html:17 +#: templates/help.html:19 msgid "" "We encourage everyone to use “question” space for asking and “answer” for " "answering." msgstr "" +"Ti invitiamo quindi ad usare lo spazio \"domanda\" per chiedere e " +"\"risposta\" per rispondere." -#: skins/default/templates/help.html:20 +#: templates/help.html:22 msgid "" "Despite that, each question and answer can be commented – \n" " the comments are good for the limited discussions." msgstr "" +"In ogni caso, tutte le domande e risposte possono essere commentate - i " +"commenti sono un ottimo mezzo per creare discussioni limitate." + +#: templates/help.html:26 +msgid "Please search before asking your questions" +msgstr "" +"Prima di fare una domanda, sei pregato di cercare nel forum se ne esiste già" +" una simile!" + +#: templates/help.html:27 +msgid "" +"Type your question in the search bar and see whether a similar question has " +"been asked before" +msgstr "" +"Basta digitare la domanda nella barra di ricerca e vedere se una domanda " +"simile è già stata posta in precedenza" + +#: templates/help.html:29 +msgid "Search has advanced capabilities:" +msgstr "La ricerca dispone di funzionalità avanzate:" + +#: templates/help.html:31 +msgid "to search in title - enter [title: your text]" +msgstr "per la ricerca nel titolo - immettere [titolo: il testo]" + +#: templates/help.html:32 +msgid "to search by tags - enter [tag: sometag] or #sometag" +msgstr "per la ricerca di tag - immettere [tag: qualchetag] o #qualchetag" + +#: templates/help.html:33 +msgid "to search by user - enter [user: somename] or @somename or @\"some name\"" +msgstr "" +"per la ricerca per utente - immettere [utente: qualchenome] o @qualchenome o" +" @\"qualche nome\"" + +#: templates/help.html:35 +msgid "" +"In addition, it is possible to click on tags to add them to the search " +"query." +msgstr "" +"Inoltre, è possibile fare clic su un tag per aggiungerlo alla query di " +"ricerca." -#: skins/default/templates/help.html:24 +#: templates/help.html:37 +msgid "" +"Finally, a separate tag search box is available in the side bar of the main " +"page, where the search tags can be entered as well" +msgstr "" +"Infine, è disponibile nella barra laterale della pagina principale un box di" +" ricerca per tag, dove i tag possono anche essere inseriti" + +#: templates/help.html:40 +msgid "" +"<em>Important!!!</em> All search terms are combined with a logical \"AND\" " +"expression - to narrow the search by adding new terms." +msgstr "" +"<em>Importante!!!</em> Tutti i termini di ricerca vengono combinati con " +"un'espressione logica \"AND\" - per restringere la ricerca aggiungendo nuovi" +" termini." + +#: templates/help.html:42 +msgid "Voting" +msgstr "Voti" + +#: templates/help.html:44 #, python-format msgid "" "Voting in %(app_name)s helps to select best answers and thank most helpful " "users." msgstr "" +"Votare in %(app_name)s aiuta a selezionare le migliori risposte ed a " +"premiare gli utenti più attivi." -#: skins/default/templates/help.html:26 +#: templates/help.html:47 #, python-format msgid "" "Please vote when you find helpful information,\n" " it really helps the %(app_name)s community." msgstr "" +"Sei pregato di votare quando troverai delle informazioni utili - aiuta molto" +" la comunità di %(app_name)s." -#: skins/default/templates/help.html:29 +#: templates/help.html:51 +msgid "Other topics" +msgstr "Altri argomenti" + +#: templates/help.html:53 msgid "" -"Besides, you can @mention users anywhere in the text to point their " -"attention,\n" -" follow users and conversations and report inappropriate content by " -"flagging it." +"You can @mention users anywhere in the text to point their attention,\n" +" follow users and conversations and report inappropriate content by flagging it." msgstr "" +"Inoltre, è possibile menzionare (@mention) gli utenti in tutto il testo per " +"ottenere la loro attenzione, seguire conversazioni e utenti e segnalare " +"contenuti inappropriati." -#: skins/default/templates/help.html:32 +#: templates/help.html:56 msgid "Enjoy." -msgstr "" +msgstr "Divertiti." -#: skins/default/templates/import_data.html:2 -#: skins/default/templates/import_data.html:4 +#: templates/import_data.html:2 templates/import_data.html.py:4 msgid "Import StackExchange data" -msgstr "" +msgstr "Importazione dei dati StackExchange" -#: skins/default/templates/import_data.html:13 +#: templates/import_data.html:13 msgid "" "<em>Warning:</em> if your database is not empty, please back it up\n" " before attempting this operation." msgstr "" +"<em>Attenzione:</em> se il database non è vuoto, per favore eseguirne il " +"backup prima di effettuare questa operazione." -#: skins/default/templates/import_data.html:16 +#: templates/import_data.html:16 msgid "" "Upload your stackexchange dump .zip file, then wait until\n" " the data import completes. This process may take several minutes.\n" " Please note that feedback will be printed in plain text.\n" " " msgstr "" +"Caricare il file .zip di stackexchange immagine, quindi attendere fino al completamento dell'importazione dei dati. Questo processo potrebbe richiedere alcuni minuti.\n" +" Si prega di notare che il feedback verrà stampato in testo normale.\n" +" " -#: skins/default/templates/import_data.html:25 +#: templates/import_data.html:25 msgid "Import data" -msgstr "" +msgstr "Importazione dei dati" -#: skins/default/templates/import_data.html:27 +#: templates/import_data.html:27 msgid "" "In the case you experience any difficulties in using this import tool,\n" -" please try importing your data via command line: <code>python manage." -"py load_stackexchange path/to/your-data.zip</code>" +" please try importing your data via command line: <code>python manage.py load_stackexchange path/to/your-data.zip</code>" msgstr "" +"Nel caso si incontrare delle difficoltà nell'utilizzo di questo strumento di" +" importazione, prova a importare i dati tramite linea di comando: " +"<code>python manage.py load_stackexchange path/to/your-data.zip</code>" -#: skins/default/templates/instant_notification.html:1 -#, python-format -msgid "<p>Dear %(receiving_user_name)s,</p>" -msgstr "<p>Caro %(receiving_user_name)s,</p>" +#: templates/list_suggested_tags.html:11 +msgid "Tag" +msgstr "Tag" -#: skins/default/templates/instant_notification.html:3 -#, fuzzy, python-format -msgid "" -"\n" -"<p>%(update_author_name)s left a <a href=\"%(post_url)s\">new comment</a>:</" -"p>\n" -msgstr "" -"\n" -"<p>%(update_author_name)s ha lasciato un <a href=\"%%(post_url)s\">nuovo " -"commento</a>\n" -"alla domanda \"%(origin_post_title)s\"</p>\n" +#: templates/list_suggested_tags.html:12 +msgid "Suggested by" +msgstr "Suggerito da" -#: skins/default/templates/instant_notification.html:8 -#, fuzzy, python-format -msgid "" -"\n" -"<p>%(update_author_name)s left a <a href=\"%(post_url)s\">new comment</a></" -"p>\n" -msgstr "" -"\n" -"<p>%(update_author_name)s ha lasciato un <a href=\"%%(post_url)s\">nuovo " -"commento</a>\n" -"alla domanda \"%(origin_post_title)s\"</p>\n" +#: templates/list_suggested_tags.html:13 +msgid "Your decision" +msgstr "Tua decisione" -#: skins/default/templates/instant_notification.html:13 -#, python-format -msgid "" -"\n" -"<p>%(update_author_name)s answered a question \n" -"<a href=\"%(post_url)s\">%(origin_post_title)s</a></p>\n" -msgstr "" -"\n" -"<p>%(update_author_name)s ha risposto alla domanda\n" -"<a href=\"%(post_url)s\">%(origin_post_title)s</a></p>\n" +#: templates/list_suggested_tags.html:14 +msgid "Suggested tag was used for questions" +msgstr "Il tag suggerito è stato utilizzato per le domande" -#: skins/default/templates/instant_notification.html:19 -#, python-format -msgid "" -"\n" -"<p>%(update_author_name)s posted a new question \n" -"<a href=\"%(post_url)s\">%(origin_post_title)s</a></p>\n" -msgstr "" -"\n" -"<p>%(update_author_name)s ha posto una nuova domanda <a href=\"%(post_url)s" -"\">%(origin_post_title)s</a></p>\n" +#: templates/list_suggested_tags.html:34 +msgid "Accept" +msgstr "Accettare" -#: skins/default/templates/instant_notification.html:25 -#, python-format -msgid "" -"\n" -"<p>%(update_author_name)s updated an answer to the question\n" -"<a href=\"%(post_url)s\">%(origin_post_title)s</a></p>\n" -msgstr "" -"\n" -"<p>%(update_author_name)s ha modificato una risposta alla domanda <a href=" -"\"%(post_url)s\">%(origin_post_title)s</a></p>\n" +#: templates/list_suggested_tags.html:35 +msgid "Reject" +msgstr "Rifiutare" -#: skins/default/templates/instant_notification.html:31 +#: templates/list_suggested_tags.html:50 #, python-format -msgid "" -"\n" -"<p>%(update_author_name)s updated a question \n" -"<a href=\"%(post_url)s\">%(origin_post_title)s</a></p>\n" -msgstr "" -"\n" -"<p>%(update_author_name)s ha modificato la domanda\n" -"<a href=\"%(post_url)s\">%(origin_post_title)s</a></p>\n" +msgid "Apply tag \"%(name)s\" to all above questions" +msgstr "Applicare il tag \"%(name)s \" a tutte le domande sopra" -#: skins/default/templates/instant_notification.html:37 -#, fuzzy, python-format -msgid "" -"\n" -"<div>%(content_preview)s</div>\n" -"<p>Please note - you can easily <a href=\"%(user_subscriptions_url)s" -"\">change</a>\n" -"how often you receive these notifications or unsubscribe. Thank you for your " -"interest in our forum!</p>\n" -msgstr "" -"\n" -"<p>Puoi <a href=\"%(user_subscriptions_url)s\">configurare</a> la frequenza " -"con cui ti vengono inviati questi aggiornamenti o eliminarli. Grazie per la " -"tua partecipazione a questo forum!</p>\n" - -#: skins/default/templates/instant_notification.html:42 -msgid "<p>Sincerely,<br/>Forum Administrator</p>" -msgstr "<p>Cordialmente,<br/>l'amministratore</p>" +#: templates/list_suggested_tags.html:51 +msgid "Reject tag" +msgstr "Rifiutare il tag" -#: skins/default/templates/instant_notification_reply_by_email.html:3 -msgid "" -"\n" -"\n" -"======= Reply above this line. ====-=-=\n" -msgstr "" +#: templates/list_suggested_tags.html:59 templates/tags.html:10 +#: templates/tags.html.py:36 +msgid "Nothing found" +msgstr "Nessun risultato" -#: skins/default/templates/instant_notification_reply_by_email.html:8 +#: templates/macros.html:5 #, python-format -msgid "" -"\n" -"You can post an answer or a comment by replying to email notifications. To " -"do that\n" -"you need %(reply_by_email_karma_threshold)s karma, you have " -"%(receiving_user_karma)s karma. \n" -msgstr "" - -#: skins/default/templates/macros.html:5 -#, fuzzy, python-format msgid "Share this question on %(site)s" -msgstr "Riapri questa domanda" - -#: skins/default/templates/macros.html:16 -#: skins/default/templates/macros.html:436 -#, python-format -msgid "follow %(alias)s" -msgstr "" +msgstr "Condividi questa domanda su %(site)s" -#: skins/default/templates/macros.html:19 -#: skins/default/templates/macros.html:439 -#, python-format -msgid "unfollow %(alias)s" -msgstr "" - -#: skins/default/templates/macros.html:20 -#: skins/default/templates/macros.html:440 -#, python-format -msgid "following %(alias)s" -msgstr "" - -#: skins/default/templates/macros.html:33 +#: templates/macros.html:39 msgid "current number of votes" msgstr "numero attuale di voti" -#: skins/default/templates/macros.html:46 -#, fuzzy +#: templates/macros.html:52 msgid "anonymous user" msgstr "utente non registrato" -#: skins/default/templates/macros.html:79 +#: templates/macros.html:99 msgid "this post is marked as community wiki" -msgstr "" +msgstr "Questo post è contrassegnato come comunità wiki" -#: skins/default/templates/macros.html:82 +#: templates/macros.html:102 #, python-format msgid "" "This post is a wiki.\n" " Anyone with karma >%(wiki_min_rep)s is welcome to improve it." msgstr "" +"Questo post è un wiki.\n" +"Chiunque con karma >%(wiki_min_rep)s è il benvenuto per migliorarlo." -#: skins/default/templates/macros.html:88 +#: templates/macros.html:108 msgid "asked" msgstr "chiesto il" -#: skins/default/templates/macros.html:90 +#: templates/macros.html:110 msgid "answered" msgstr "risposto il" -#: skins/default/templates/macros.html:92 +#: templates/macros.html:112 msgid "posted" msgstr "scritto il" -#: skins/default/templates/macros.html:122 +#: templates/macros.html:144 msgid "updated" msgstr "modificato" -#: skins/default/templates/macros.html:202 +#: templates/macros.html:259 templates/macros.html.py:265 +msgid "Leave this group" +msgstr "Lascia questo gruppo" + +#: templates/macros.html:260 templates/macros.html.py:262 +#: templates/macros.html:281 +msgid "Join this group" +msgstr "Partecipare a questo gruppo" + +#: templates/macros.html:261 templates/macros.html.py:266 +#: templates/macros.html:276 +msgid "You are a member" +msgstr "Sei un membro" + +#: templates/macros.html:268 +msgid "Cancel application" +msgstr "Cancella l'applicazione" + +#: templates/macros.html:269 templates/macros.html.py:278 +msgid "Waiting approval" +msgstr "In attesa di approvazione" + +#: templates/macros.html:271 templates/macros.html.py:272 +#: templates/macros.html:283 +msgid "Ask to join" +msgstr "Chiedere di aderire" + +#: templates/macros.html:312 #, python-format msgid "see questions tagged '%(tag)s'" msgstr "vedi domande con i tag '%(tag)s'" -#: skins/default/templates/macros.html:304 +#: templates/macros.html:419 msgid "delete this comment" msgstr "cancella questo commento" -#: skins/default/templates/macros.html:507 templatetags/extra_tags.py:43 +#: templates/macros.html:426 templates/revisions.html:38 +#: templates/revisions.html.py:41 templates/question/answer_controls.html:56 +#: templates/question/question_controls.html:36 +msgid "edit" +msgstr "modifica" + +#: templates/macros.html:430 +msgid "convert to answer" +msgstr "converti in risposta" + +#: templates/macros.html:566 +#, python-format +msgid "follow %(alias)s" +msgstr "segui %(alias)s" + +#: templates/macros.html:569 +#, python-format +msgid "unfollow %(alias)s" +msgstr "non seguire %(alias)s" + +#: templates/macros.html:570 +#, python-format +msgid "following %(alias)s" +msgstr "seguendo %(alias)s" + +#: templates/macros.html:640 templatetags/extra_tags.py:43 #, python-format msgid "%(username)s gravatar image" msgstr "Immagine gravatar per %(username)s " -#: skins/default/templates/macros.html:516 -#, fuzzy, python-format +#: templates/macros.html:649 +#, python-format msgid "%(username)s's website is %(url)s" -msgstr "lo stato dell'utente %(username)s è \"%(status)s\"" +msgstr "il sito web di %(username)s è %(url)s" -#: skins/default/templates/macros.html:531 -#: skins/default/templates/macros.html:532 -#: skins/default/templates/macros.html:570 -#: skins/default/templates/macros.html:571 +#: templates/macros.html:664 templates/macros.html.py:665 +#: templates/macros.html:703 templates/macros.html.py:704 msgid "previous" msgstr "precedente" -#: skins/default/templates/macros.html:543 -#: skins/default/templates/macros.html:582 +#: templates/macros.html:676 templates/macros.html.py:715 msgid "current page" msgstr "pagina corrente" -#: skins/default/templates/macros.html:545 -#: skins/default/templates/macros.html:552 -#: skins/default/templates/macros.html:584 -#: skins/default/templates/macros.html:591 -#, fuzzy, python-format +#: templates/macros.html:678 templates/macros.html.py:685 +#: templates/macros.html:717 templates/macros.html.py:724 +#, python-format msgid "page %(num)s" msgstr "pagina %(num)s" -#: skins/default/templates/macros.html:556 -#: skins/default/templates/macros.html:595 +#: templates/macros.html:689 templates/macros.html.py:728 msgid "next page" msgstr "pagina successiva" -#: skins/default/templates/macros.html:607 +#: templates/macros.html:740 #, python-format msgid "responses for %(username)s" msgstr "risposte per %(username)s" -#: skins/default/templates/macros.html:610 -#, fuzzy, python-format +#: templates/macros.html:743 +#, python-format msgid "you have %(response_count)s new response" msgid_plural "you have %(response_count)s new responses" msgstr[0] "hai una nuova risposta" msgstr[1] "hai %(response_count)s nuove risposte" -#: skins/default/templates/macros.html:613 +#: templates/macros.html:746 msgid "no new responses yet" msgstr "nessuna nuova risposta" -#: skins/default/templates/macros.html:628 -#: skins/default/templates/macros.html:629 -#, fuzzy, python-format +#: templates/macros.html:761 templates/macros.html.py:762 +#, python-format msgid "%(new)s new flagged posts and %(seen)s previous" -msgstr "Ha segnalato un post come inappropriato" +msgstr "%(new)s nuovi messaggi contrassegnati e %(seen)s precedenti" -#: skins/default/templates/macros.html:631 -#: skins/default/templates/macros.html:632 -#, fuzzy, python-format +#: templates/macros.html:764 templates/macros.html.py:765 +#, python-format msgid "%(new)s new flagged posts" -msgstr "Ha segnalato un post come inappropriato" +msgstr "%(new)s nuovi post contrassegnati" -#: skins/default/templates/macros.html:637 -#: skins/default/templates/macros.html:638 -#, fuzzy, python-format +#: templates/macros.html:770 templates/macros.html.py:771 +#, python-format msgid "%(seen)s flagged posts" -msgstr "Ha segnalato un post come inappropriato" +msgstr "%(seen)s messaggi contrassegnati" -#: skins/default/templates/main_page.html:11 +#: templates/main_page.html:11 msgid "Questions" msgstr "Domande" -#: skins/default/templates/question.html:110 -#, fuzzy +#: templates/question.html:144 msgid "post a comment / <strong>some</strong> more" -msgstr "visualizza <strong>%(counter)s</strong> commento aggiuntivo" +msgstr "Posta un commento / <strong>alcuni</strong> ulteriori" -#: skins/default/templates/question.html:113 -#, fuzzy +#: templates/question.html:147 msgid "see <strong>some</strong> more" -msgstr "visualizza <strong>%(counter)s</strong> commento aggiuntivo" +msgstr "visualizza <strong>commento aggiuntivo</strong>" -#: skins/default/templates/question.html:117 -#: skins/default/templates/question/javascript.html:20 -#, fuzzy +#: templates/question.html:151 templates/question/javascript.html:26 msgid "post a comment" -msgstr "aggiungi commento" +msgstr "aggiungi un commento" -#: skins/default/templates/question.html:135 -#: skins/default/templates/question/content.html:40 +#: templates/question.html:170 templates/question/content.html:47 msgid "Answer Your Own Question" msgstr "Rispondi alla tua domanda" -#: skins/default/templates/question.html:140 -#, fuzzy +#: templates/question.html:175 msgid "Post Your Answer" msgstr "La tua risposta" -#: skins/default/templates/question.html:146 -#: skins/default/templates/widgets/ask_form.html:41 -#, fuzzy +#: templates/question.html:181 templates/widgets/ask_form.html:47 msgid "Login/Signup to Post" msgstr "Accedi/registrati per scrivere la tua risposta" -#: skins/default/templates/question_edit.html:4 -#: skins/default/templates/question_edit.html:9 +#: templates/question_edit.html:4 templates/question_edit.html.py:9 msgid "Edit question" msgstr "Modifica domanda" -#: skins/default/templates/question_retag.html:3 -#: skins/default/templates/question_retag.html:5 -#, fuzzy +#: templates/question_retag.html:3 templates/question_retag.html.py:5 msgid "Retag question" msgstr "Domande simili" -#: skins/default/templates/question_retag.html:21 +#: templates/question_retag.html:21 msgid "Retag" msgstr "Modifica tag" -#: skins/default/templates/question_retag.html:28 +#: templates/question_retag.html:28 msgid "Why use and modify tags?" msgstr "Perché usare e modificare i tag?" -#: skins/default/templates/question_retag.html:30 +#: templates/question_retag.html:30 msgid "Tags help to keep the content better organized and searchable" msgstr "" +"I tag aiutano a mantenere il contenuto meglio organizzato e ricercabile" -#: skins/default/templates/question_retag.html:32 +#: templates/question_retag.html:32 msgid "tag editors receive special awards from the community" msgstr "sarai premiato con delle medaglie per il buon uso dei tag" -#: skins/default/templates/question_retag.html:59 +#: templates/question_retag.html:59 msgid "up to 5 tags, less than 20 characters each" msgstr "fino a 5 tag, ognuno lungo al massimo 20 caratteri" -#: skins/default/templates/reopen.html:3 skins/default/templates/reopen.html:5 +#: templates/reopen.html:4 templates/reopen.html.py:6 msgid "Reopen question" msgstr "Riapri domanda" -#: skins/default/templates/reopen.html:6 -msgid "Title" -msgstr "Titolo" - -#: skins/default/templates/reopen.html:11 -#, fuzzy, python-format +#: templates/reopen.html:12 +#, python-format msgid "" "This question has been closed by \n" -" <a href=\"%(closed_by_profile_url)s\">%(closed_by_username)s</a>\n" +" <a href=\"%(closed_by_profile_url)s\">%(username)s</a>\n" msgstr "" "Questa domanda è stata chiusa da\n" -"<a href=\"%(closed_by_profile_url)s\">%(closed_by_username)s</a>" +"<a href=\"%(closed_by_profile_url)s\">%(username)s</a>\n" -#: skins/default/templates/reopen.html:16 +#: templates/reopen.html:17 msgid "Close reason:" msgstr "Motivo della chiusura:" -#: skins/default/templates/reopen.html:19 +#: templates/reopen.html:20 msgid "When:" msgstr "Quando:" -#: skins/default/templates/reopen.html:22 +#: templates/reopen.html:23 msgid "Reopen this question?" msgstr "Riapri questa domanda?" -#: skins/default/templates/reopen.html:26 +#: templates/reopen.html:27 msgid "Reopen this question" msgstr "Riapri questa domanda" -#: skins/default/templates/reply_by_email_error.html:1 -msgid "" -"\n" -"<p>The system was unable to process your message successfully, the reason " -"being:<p>\n" -msgstr "" - -#: skins/default/templates/revisions.html:4 -#: skins/default/templates/revisions.html:7 +#: templates/revisions.html:4 templates/revisions.html.py:7 msgid "Revision history" msgstr "Storia delle modifiche" -#: skins/default/templates/revisions.html:23 +#: templates/revisions.html:23 msgid "click to hide/show revision" msgstr "clicca per mostrare/nascondere le modifiche" -#: skins/default/templates/revisions.html:29 -#, fuzzy, python-format +#: templates/revisions.html:29 +#, python-format msgid "revision %(number)s" -msgstr "Numero di revisione dei media della skin" +msgstr "revisione %(number)s" -#: skins/default/templates/subscribe_for_tags.html:3 -#: skins/default/templates/subscribe_for_tags.html:5 -#, fuzzy +#: templates/subscribe_for_tags.html:3 templates/subscribe_for_tags.html:5 msgid "Subscribe for tags" -msgstr "usare i tag" +msgstr "Iscriviti per i tag" -#: skins/default/templates/subscribe_for_tags.html:6 -#, fuzzy +#: templates/subscribe_for_tags.html:6 msgid "Please, subscribe for the following tags:" -msgstr "Accedi per sottoscrivere i tag: %(tags)s" +msgstr "Iscriviti per i tag seguenti:" -#: skins/default/templates/subscribe_for_tags.html:15 -#, fuzzy +#: templates/subscribe_for_tags.html:15 msgid "Subscribe" -msgstr "usare i tag" +msgstr "Iscriviti" + +#: templates/tags.html:4 templates/tags/header.html:8 +#: templates/widgets/edit_post.html:35 templates/widgets/related_tags.html:3 +#: templates/widgets/tag_category_selector.html:2 +msgid "Tags" +msgstr "Tags" -#: skins/default/templates/tags.html:8 +#: templates/users.html:4 templates/users.html.py:14 +msgid "Users" +msgstr "Utenti" + +#: templates/users.html:12 #, python-format -msgid "Tags, matching \"%(stag)s\"" -msgstr "" +msgid "Users in group %(name)s" +msgstr "Utenti nel gruppo %(name)s" -#: skins/default/templates/tags.html:10 -msgid "Tag list" -msgstr "Lista dei tag" +#: templates/users.html:20 +msgid "Select/Sort by »" +msgstr "Ordina per:" + +#: templates/users.html:25 +#, python-format +msgid "people in group %(name)s" +msgstr "persone nel gruppo %(name)s" -#: skins/default/templates/tags.html:14 skins/default/templates/users.html:9 -#: skins/default/templates/main_page/tab_bar.html:15 -#, fuzzy +#: templates/users.html:29 templates/main_page/tab_bar.html:15 +#: templates/tags/header.html:13 msgid "Sort by »" msgstr "Ordina per:" -#: skins/default/templates/tags.html:19 -msgid "sorted alphabetically" -msgstr "ordina i tag alfabeticamente" +#: templates/users.html:36 +msgid "see people with the highest reputation" +msgstr "vedere le persone con la più alta reputazione" -#: skins/default/templates/tags.html:20 -msgid "by name" +#: templates/users.html:37 templates/user_profile/user_info.html:26 +#: templates/user_profile/user_reputation.html:5 +#: templates/user_profile/user_tabs.html:24 +msgid "karma" +msgstr "karma" + +#: templates/users.html:43 +msgid "see people who joined most recently" +msgstr "vedere persone che hanno aderito più di recente" + +#: templates/users.html:44 +msgid "recent" +msgstr "più recenti" + +#: templates/users.html:49 +msgid "see people who joined the site first" +msgstr "vedere persone che hanno aderito al sito per prime" + +#: templates/users.html:55 +msgid "see people sorted by name" +msgstr "vedi le persone ordinate per nome" + +#: templates/users.html:56 +msgid "by username" msgstr "per nome" -#: skins/default/templates/tags.html:25 -msgid "sorted by frequency of tag use" -msgstr "ordina i tag per frequenza d'uso" +#: templates/users.html:62 +#, python-format +msgid "users matching query %(search_query)s:" +msgstr "utenti corrispondenti alla ricerca %(search_query)s:" -#: skins/default/templates/tags.html:26 -msgid "by popularity" -msgstr "per numero di voti" +#: templates/users.html:65 +msgid "Nothing found." +msgstr "Nessun utente trovato" -#: skins/default/templates/tags.html:31 skins/default/templates/tags.html:56 -msgid "Nothing found" -msgstr "Nessun risultato" +#: templates/authopenid/authopenid_macros.html:63 +msgid "Please enter your <span>user name</span>, then sign in" +msgstr "Per favore inserisci il tuo <span>username</span>, quindi accedi" -#: skins/default/templates/users.html:4 skins/default/templates/users.html:6 -msgid "Users" -msgstr "Utenti" +#: templates/authopenid/authopenid_macros.html:64 +#: templates/authopenid/signin.html:98 +#: templates/authopenid/widget_signin.html:102 +msgid "(or select another login method above)" +msgstr "(oppure scegli una delle opzioni qui sopra)" -#: skins/default/templates/users.html:14 -msgid "see people with the highest reputation" +#: templates/authopenid/authopenid_macros.html:66 +#: templates/authopenid/signin.html:118 +#: templates/authopenid/widget_signin.html:118 +msgid "Sign in" +msgstr "Accedi" + +#: templates/authopenid/changeemail.html:2 +#: templates/authopenid/changeemail.html:8 +#: templates/authopenid/changeemail.html:49 +msgid "Change Email" +msgstr "Cambia email" + +#: templates/authopenid/changeemail.html:10 +msgid "Save your email address" +msgstr "Salva il tuo indirizzo e-mail" + +#: templates/authopenid/changeemail.html:15 +#, python-format +msgid "" +"<span class=\\\"strong big\\\">Enter your new email into the box below</span> if \n" +"you'd like to use another email for <strong>update subscriptions</strong>.\n" +"<br>Currently you are using <strong>%%(email)s</strong>" msgstr "" +"<span class=\\\"strong big\\\">Inserisci la tua nuova email nel box sottostante</span> per aggiornare la mail delle tue sottoscrizioni.\n" +"<br>Attualmente stai usando <strong>%%(email)s</strong>" -#: skins/default/templates/users.html:15 -#: skins/default/templates/user_profile/user_info.html:25 -#: skins/default/templates/user_profile/user_reputation.html:4 -#: skins/default/templates/user_profile/user_tabs.html:23 -msgid "karma" +#: templates/authopenid/changeemail.html:19 +#, python-format +msgid "" +"<span class='strong big'>Please enter your email address in the box below.</span>\n" +"Valid email address is required on this Q&A forum. If you like, \n" +"you can <strong>receive updates</strong> on interesting questions or entire\n" +"forum via email. Also, your email is used to create a unique \n" +"<a href='%%(gravatar_faq_url)s'><strong>gravatar</strong></a> image for your\n" +"account. Email addresses are never shown or otherwise shared with anybody\n" +"else." msgstr "" +"<span class='strong big'>Prego inserisci l'indirizzo email nel box sotto.</span>\n" +"Un indirizzo email valido è richiesto in questo Q&A forum. Se vorrai, \n" +"potrai <strong>ricevere aggiornamenti</strong> su domande interessanti o sull'intero forum. Inoltre, la tua email è usata per creare un'unica immagine\n" +"<a href='%%(gravatar_faq_url)s'><strong>gravatar</strong></a> per il tuo account. Gli indirizzi email non sono mai mostrati o condivisi con nessun'altro." -#: skins/default/templates/users.html:20 -msgid "see people who joined most recently" +#: templates/authopenid/changeemail.html:38 +msgid "" +"<strong>Your new Email:</strong> \n" +"(will <strong>not</strong> be shown to anyone, must be valid)" msgstr "" +"<strong>La tua nuova Email:</strong> \n" +"(non sarà <strong>mai</strong> mostrata a nessuno, deve essere valida)" -#: skins/default/templates/users.html:21 -msgid "recent" -msgstr "più recenti" +#: templates/authopenid/changeemail.html:49 +msgid "Save Email" +msgstr "Salva e-mail" -#: skins/default/templates/users.html:26 -msgid "see people who joined the site first" +#: templates/authopenid/changeemail.html:58 +msgid "Validate email" +msgstr "Verifica e-mail" + +#: templates/authopenid/changeemail.html:61 +#, python-format +msgid "" +"<span class=\\\"strong big\\\">An email with a validation link has been sent to \n" +"%%(email)s.</span> Please <strong>follow the emailed link</strong> with your \n" +"web browser. Email validation is necessary to help insure the proper use of \n" +"email on <span class=\\\"orange\\\">Q&A</span>. If you would like to use \n" +"<strong>another email</strong>, please <a \n" +"href='%%(change_email_url)s'><strong>change it again</strong></a>." msgstr "" +"<span class=\\\"strong big\\\">Una mail con un link di validazione è stata spedita a \n" +"%%(email)s.</span> Prego <strong>segui il link nella mail</strong> con il tuo browser. La validazione della mail è necessaria per garantire il corretto utilizzo del forum. Se vuoi usare \n" +"<strong>un'altra email</strong>, prego <a \n" +"href='%%(change_email_url)s'><strong>cambiala nuovamente</strong></a>." -#: skins/default/templates/users.html:32 -msgid "see people sorted by name" +#: templates/authopenid/changeemail.html:70 +msgid "Email not changed" +msgstr "E-mail non modificata" + +#: templates/authopenid/changeemail.html:73 +#, python-format +msgid "" +"<span class=\\\"strong big\\\">Your email address %%(email)s has not been changed.\n" +"</span> If you decide to change it later - you can always do it by editing \n" +"it in your user profile or by using the <a \n" +"href='%%(change_email_url)s'><strong>previous form</strong></a> again." msgstr "" +"<span class=\\\"strong big\\\">Il tuo indirizzo email %%(email)s non è stato cambiato.\n" +"</span> Se decidi di cambiarlo successivamente potrai farlo modificandolo nel tuo profilo utente o usando ancora la <a \n" +"href='%%(change_email_url)s'><strong>form precedente</strong></a>." -#: skins/default/templates/users.html:33 -msgid "by username" -msgstr "per nome" +#: templates/authopenid/changeemail.html:80 +msgid "Email changed" +msgstr "E-mail modificata" -#: skins/default/templates/users.html:39 +#: templates/authopenid/changeemail.html:83 #, python-format -msgid "users matching query %(suser)s:" -msgstr "utenti contenenti %(suser)s:" +msgid "" +"\n" +"<span class='big strong'>Your email address is now set to %%(email)s.</span> \n" +"Updates on the questions that you like most will be sent to this address. \n" +"Email notifications are sent once a day or less frequently - only when there \n" +"are any news." +msgstr "" +"\n" +"<span class='big strong'>La tua email è ora impostata a %%(email)s.</span> \n" +"Gli aggiornamenti alle domande che preferisci verranno spediti a questo indirizzo. \n" +"Le notifiche via email saranno spedite solo una volta al giorno o meno e solo se ci sono novità." -#: skins/default/templates/users.html:42 -msgid "Nothing found." -msgstr "Nessun utente trovato" +#: templates/authopenid/changeemail.html:91 +msgid "Email verified" +msgstr "E-mail verificata" -#: skins/default/templates/main_page/headline.html:4 views/readers.py:135 +#: templates/authopenid/changeemail.html:94 +msgid "" +"<span class=\\\"big strong\\\">Thank you for verifying your email!</span> Now \n" +"you can <strong>ask</strong> and <strong>answer</strong> questions. Also if \n" +"you find a very interesting question you can <strong>subscribe for the \n" +"updates</strong> - then will be notified about changes <strong>once a day</strong>\n" +"or less frequently." +msgstr "" +"<span class=\\\"big strong\\\">Grazie per aver verificato la tua " +"email!</span> Ora potrai <strong>chiedere</strong> e " +"<strong>rispondere</strong> a domande. Inoltre, se trovi una domanda che ti " +"interessa particolarmente potrai <strong>sottoscrivere agli " +"aggiornamenti</strong> - e sarai notificato degli aggiornamenti <strong>una " +"volta al giorno</strong> o meno frequentemente." + +#: templates/authopenid/changeemail.html:102 +msgid "Validation email not sent" +msgstr "Verifica email non spedita" + +#: templates/authopenid/changeemail.html:105 +#, python-format +msgid "" +"<span class='big strong'>Your current email address %%(email)s has been \n" +"validated before</span> so the new key was not sent. You can <a \n" +"href='%%(change_link)s'>change</a> email used for update subscriptions if \n" +"necessary." +msgstr "" +"<span class='big strong'>Il tuo indirizzo email corrente %%(email)s è stato validato in precedenza</span> quindi nessuna nuova chiave è stata inviata. Puoi <a \n" +"href='%%(change_link)s'>cambiare</a> l'email usata per le sottoscrizioni se necessario." + +#: templates/authopenid/complete.html:20 +msgid "Registration" +msgstr "Registrati" + +#: templates/authopenid/complete.html:22 +msgid "User registration" +msgstr "Registrati" + +#: templates/authopenid/complete.html:59 +#: templates/authopenid/signup_with_password.html:4 +#: templates/authopenid/signup_with_password.html:44 +msgid "Signup" +msgstr "Accedi" + +#: templates/authopenid/confirm_email.txt:1 +msgid "Thank you for registering at our Q&A forum!" +msgstr "Grazie per esserti registrato sul nostro forum Q&A!" + +#: templates/authopenid/confirm_email.txt:3 +msgid "Your account details are:" +msgstr "Il tuo account è:" + +#: templates/authopenid/confirm_email.txt:5 +msgid "Username:" +msgstr "Nome utente:" + +#: templates/authopenid/confirm_email.txt:6 +msgid "Password:" +msgstr "Password:" + +#: templates/authopenid/confirm_email.txt:8 +msgid "Please sign in here:" +msgstr "Puoi accedere al tuo account da qui:" + +#: templates/authopenid/confirm_email.txt:11 +#: templates/authopenid/email_validation.txt:13 +msgid "" +"Sincerely,\n" +"Q&A Forum Administrator" +msgstr "" +"Cordialmente,\n" +" l'Amministratore" + +#: templates/authopenid/email_validation.html:2 +#: templates/authopenid/email_validation.html:3 +#: templates/authopenid/email_validation.txt:1 +msgid "Greetings from the Q&A forum" +msgstr "Benvenuto sul forum Q&A" + +#: templates/authopenid/email_validation.html:7 +#: templates/authopenid/email_validation.txt:3 +msgid "To make use of the Forum, please follow the link below:" +msgstr "Per utilizzare il forum, clicca sul collegamento qui sotto:" + +#: templates/authopenid/email_validation.html:11 +#: templates/authopenid/email_validation.txt:7 +msgid "Following the link above will help us verify your email address." +msgstr "" +"Cliccando sul collegamento qui sopra, verificherai il tuo indirizzo e-mail." + +#: templates/authopenid/email_validation.html:13 +#: templates/authopenid/email_validation.txt:9 +msgid "" +"If you believe that this message was sent in mistake - \n" +"no further action is needed. Just ignore this email, we apologize\n" +"for any inconvenience" +msgstr "" +"Se hai ricevuto questo messaggio per errore, basta che tu ignori questa " +"e-mail. Ci scusiamo per il problema." + +#: templates/authopenid/logout.html:3 +msgid "Logout" +msgstr "Logout" + +#: templates/authopenid/logout.html:5 +msgid "You have successfully logged out" +msgstr "Ti sei disconnesso con successo" + +#: templates/authopenid/logout.html:7 +msgid "" +"However, you still may be logged in to your OpenID provider. Please logout " +"of your provider if you wish to do so." +msgstr "" +"Ti aspettiamo presto!" + +#: templates/authopenid/signin.html:5 +#: templates/authopenid/widget_signin.html:5 +msgid "User login" +msgstr "Accesso utente" + +#: templates/authopenid/signin.html:15 +#: templates/authopenid/widget_signin.html:19 +#, python-format +msgid "" +"\n" +" Your answer to %(title)s %(summary)s will be posted once you log in\n" +" " +msgstr "" +"\n" +"<span class=\"strong big\">La tua risposta alla domanda </span> <i>\"<strong>%(title)s</strong> %(summary)s...\"</i> <span class=\"strong big\">è stata memorizzata e verrà pubblicata non appena ti registrerai.</span>" + +#: templates/authopenid/signin.html:22 +#: templates/authopenid/widget_signin.html:26 +#, python-format +msgid "" +"Your question \n" +" %(title)s %(summary)s will be posted once you log in\n" +" " +msgstr "" +"<span class=\"strong big\">La tua domanda</span> " +"<i>\"<strong>%(title)s</strong> %(summary)s...\"</i> <span class=\"strong " +"big\">è stata memorizzata e verrà pubblicata non appena ti " +"registrerai.</span>" + +#: templates/authopenid/signin.html:31 +#: templates/authopenid/widget_signin.html:36 +msgid "" +"It's a good idea to make sure that your existing login methods still work, " +"or add a new one. Please click any of the icons below to check/change or add" +" new login methods." +msgstr "" +"E' una buona idea controllare che i tuoi metodi di accesso attuali " +"funzionino correttamente. Prego clicca su una delle icone sotto per " +"controllare/modificare o aggiungere un nuovo metodo di accesso." + +#: templates/authopenid/signin.html:33 +#: templates/authopenid/widget_signin.html:38 +msgid "" +"Please add a more permanent login method by clicking one of the icons below," +" to avoid logging in via email each time." +msgstr "" +"Prego aggiungi un altro metodo di accesso cliccando su una delle icone sotto" +" per evitare di accedere ogni volta via email." + +#: templates/authopenid/signin.html:37 +#: templates/authopenid/widget_signin.html:42 +msgid "" +"Click on one of the icons below to add a new login method or re-validate an " +"existing one." +msgstr "" +"Clicca su una delle icone qui sotto per aggiungere un nuovo metodo di login " +"o riverificare uno esistente." + +#: templates/authopenid/signin.html:39 +#: templates/authopenid/widget_signin.html:44 +msgid "" +"You don't have a method to log in right now, please add one or more by " +"clicking any of the icons below." +msgstr "" +"Non hai ancora definito un metodo di accesso veloce. Puoi aggiungerne uno o più " +"cliccando sulle icone qui sotto." + +#: templates/authopenid/signin.html:42 +#: templates/authopenid/widget_signin.html:47 +msgid "" +"Please check your email and visit the enclosed link to re-connect to your " +"account" +msgstr "" +"Sei pregato di controllare la posta elettronica e visitare il link allegato " +"per riconnettersi al tuo account" + +#: templates/authopenid/signin.html:90 +#: templates/authopenid/widget_signin.html:94 +msgid "or enter your <span>user name and password</span>, then sign in" +msgstr "o inserisci il tuo <span>nome utente e password</span>, quindi accedi" + +#: templates/authopenid/signin.html:94 +#: templates/authopenid/widget_signin.html:98 +msgid "Please, sign in" +msgstr "Puoi accedere al tuo account da qui:" + +#: templates/authopenid/signin.html:104 +#: templates/authopenid/widget_signin.html:105 +msgid "Login failed, please try again" +msgstr "Accesso non riuscito, riprovare" + +#: templates/authopenid/signin.html:109 +#: templates/authopenid/widget_signin.html:109 +msgid "Login or email" +msgstr "Login o Email" + +#: templates/authopenid/signin.html:113 +#: templates/authopenid/widget_signin.html:113 utils/forms.py:259 +msgid "Password" +msgstr "Password" + +#: templates/authopenid/signin.html:125 +#: templates/authopenid/widget_signin.html:125 +msgid "To change your password - please enter the new one twice, then submit" +msgstr "" +"Per cambiare la password - per favore inserire due volte una nuova, quindi " +"submittare" + +#: templates/authopenid/signin.html:129 +#: templates/authopenid/widget_signin.html:129 +msgid "New password" +msgstr "Nuova password" + +#: templates/authopenid/signin.html:138 +#: templates/authopenid/widget_signin.html:138 +msgid "Please, retype" +msgstr "per favore, digita di nuovo la password" + +#: templates/authopenid/signin.html:162 +#: templates/authopenid/widget_signin.html:162 +msgid "Here are your current login methods" +msgstr "Qui i metodi di accesso" + +#: templates/authopenid/signin.html:166 +#: templates/authopenid/widget_signin.html:166 +msgid "provider" +msgstr "provider" + +#: templates/authopenid/signin.html:167 +#: templates/authopenid/widget_signin.html:167 +msgid "last used" +msgstr "ultimo accesso" + +#: templates/authopenid/signin.html:168 +#: templates/authopenid/widget_signin.html:168 +msgid "delete, if you like" +msgstr "elimina, se preferisci" + +#: templates/authopenid/signin.html:182 +#: templates/authopenid/widget_signin.html:182 +#: templates/question/answer_controls.html:29 +#: templates/question/question_controls.html:4 +msgid "delete" +msgstr "cancella" + +#: templates/authopenid/signin.html:184 +#: templates/authopenid/widget_signin.html:184 +msgid "cannot be deleted" +msgstr "non puo' essere eliminato" + +#: templates/authopenid/signin.html:197 +#: templates/authopenid/widget_signin.html:197 +msgid "Still have trouble signing in?" +msgstr "Hai altre domande?" + +#: templates/authopenid/signin.html:202 +#: templates/authopenid/widget_signin.html:202 +msgid "Please, enter your email address below and obtain a new key" +msgstr "" +"Per favore, inserisci il tuo indirizzo email qui sotto per ottenere una " +"nuova chiave" + +#: templates/authopenid/signin.html:204 +#: templates/authopenid/widget_signin.html:204 +msgid "Please, enter your email address below to recover your account" +msgstr "" +"Per favore, inserisci il tuo indirizzo email qui sotto per recuperare il tuo" +" account" + +#: templates/authopenid/signin.html:207 +#: templates/authopenid/widget_signin.html:207 +msgid "recover your account via email" +msgstr "recupera il tuo account via email" + +#: templates/authopenid/signin.html:218 +#: templates/authopenid/widget_signin.html:218 +msgid "Send a new recovery key" +msgstr "Invia una nuova chiave di ripristino" + +#: templates/authopenid/signin.html:220 +#: templates/authopenid/widget_signin.html:220 +msgid "Recover your account via email" +msgstr "Recupera il tuo account via email" + +#: templates/authopenid/signup_with_password.html:10 +msgid "Please register by clicking on any of the icons below" +msgstr "Si prega di registrarsi cliccando su una delle icone qui sotto" + +#: templates/authopenid/signup_with_password.html:23 +msgid "or create a new user name and password here" +msgstr "o creare un nuovo nome utente e password qui" + +#: templates/authopenid/signup_with_password.html:25 +msgid "Create login name and password" +msgstr "Scegli nome utente e password" + +#: templates/authopenid/signup_with_password.html:26 +msgid "" +"<span class='strong big'>If you prefer, create your forum login name and \n" +"password here. However</span>, please keep in mind that we also support \n" +"<strong>OpenID</strong> login method. With <strong>OpenID</strong> you can \n" +"simply reuse your external login (e.g. Gmail or AOL) without ever sharing \n" +"your login details with anyone and having to remember yet another password." +msgstr "" +"<span class='strong big'>Se preferisci, crea il tuo login e password qui. " +"Tuttavia</span>, tieni presente che supportiamo anche il metodo di login " +"<strong>OpenID</strong>. Con <strong>OpenID</strong> è possibile " +"riutilizzare semplicemente il login esterno (ad esempio Gmail o AOL) senza " +"mai condividere i tuoi dati di accesso con nessuno e di dover ricordare " +"ancora un'altra password." + +#: templates/authopenid/signup_with_password.html:41 +msgid "" +"Please read and type in the two words below to help us prevent automated " +"account creation." +msgstr "" +"Riscrivi le due parole che leggi qui sotto. Questo serve a impedire la " +"creazione automatizzata di nuovi account." + +#: templates/authopenid/signup_with_password.html:46 +msgid "or" +msgstr "oppure" + +#: templates/authopenid/signup_with_password.html:47 +msgid "return to OpenID login" +msgstr "torna al login OpenID" + +#: templates/authopenid/verify_email.html:2 +#: templates/authopenid/verify_email.html:4 +msgid "Confirm email address" +msgstr "Conferma indirizzo email" + +#: templates/authopenid/verify_email.html:6 +msgid "" +"Validation email sent. Please find it and follow the enclosed link.<br/>\n" +" If the link doesn't work - enter the code below:" +msgstr "" +"Inviata email di convalida. Si prega di seguire il link allegato. <br/>\n" +"Se il link non funziona - Inserisci il codice qui sotto:" + +#: templates/authopenid/verify_email.html:11 +msgid "Confirm email" +msgstr "Conferma l'email" + +#: templates/authopenid/widget_signin.html:33 +msgid "" +"Choose your favorite service below to sign in using secure OpenID or similar" +" technology. Your external service password always stays confidential and " +"you don't have to rememeber or create another one." +msgstr "" +"Scegli il tuo servizio preferito per autenticarti usando OpenID o una " +"tecnologia simile. La tua password del servizio rimarrà sempre confidenziale" +" e non la dovrai ricordare o crearne un'altra." + +#: templates/avatar/add.html:3 +msgid "add avatar" +msgstr "aggiungi avatar" + +#: templates/avatar/add.html:5 +msgid "Change avatar" +msgstr "Cambia avatar" + +#: templates/avatar/add.html:6 templates/avatar/change.html:7 +msgid "Your current avatar: " +msgstr "Il tuo attuale avatar: " + +#: templates/avatar/add.html:9 templates/avatar/change.html:11 +msgid "You haven't uploaded an avatar yet. Please upload one now." +msgstr "Ancora non avete caricato un avatar. Si prega di caricare uno ora." + +#: templates/avatar/add.html:13 +msgid "Upload New Image" +msgstr "Caricare la nuova immagine" + +#: templates/avatar/change.html:4 +msgid "change avatar" +msgstr "cambia avatar" + +#: templates/avatar/change.html:17 +msgid "Choose new Default" +msgstr "Scegliete nuovo predefinito." + +#: templates/avatar/change.html:22 +msgid "Upload" +msgstr "Upload" + +#: templates/avatar/confirm_delete.html:2 +msgid "delete avatar" +msgstr "eliminare avatar" + +#: templates/avatar/confirm_delete.html:4 +msgid "Please select the avatars that you would like to delete." +msgstr "Si prega di selezionare l'avatar che vuoi eliminare." + +#: templates/avatar/confirm_delete.html:6 +#, python-format +msgid "" +"You have no avatars to delete. Please <a " +"href=\"%(avatar_change_url)s\">upload one</a> now." +msgstr "" +"Non hai nessun avatar da eliminare. Per favore <a " +"href=\"%(avatar_change_url)s\"> caricare uno</a> ora." + +#: templates/avatar/confirm_delete.html:12 +msgid "Delete These" +msgstr "Eliminare questi" + +#: templates/email/ask_for_signature.html:4 +#, python-format +msgid "%(user)s, please reply to this message." +msgstr "%(user)s, ti preghiamo di rispondere a questo messaggio." + +#: templates/email/ask_for_signature.html:9 +msgid "" +"Your post could not be published, because we could not detect signature in " +"your email." +msgstr "" +"Il tuo post potrebbe non essere pubblicato, perché noi non potremmo rilevare" +" la firma nella tua email." + +#: templates/email/ask_for_signature.html:10 +msgid "" +"This happened either because this is your first post or you have changed " +"your email signature." +msgstr "" +"Questo è accaduto sia perché questo è il tuo primo post o perchè hai " +"cambiato la tua firma email." + +#: templates/email/ask_for_signature.html:11 +msgid "Please make a simple response, without editing this message." +msgstr "" +"Si prega di fare una risposta semplice, senza modificare questo messaggio." + +#: templates/email/ask_for_signature.html:12 +msgid "" +"We will then attempt to detect the signature in your response and you should" +" be able to post." +msgstr "" +"Poi si tenterà di rilevare la firma nella tua risposta e si dovrebbe essere " +"in grado di pubblicare." + +#: templates/email/feedback_email.txt:2 +#, python-format +msgid "" +"\n" +"Hello, this is a %(site_title)s forum feedback message.\n" +msgstr "" +"\n" +"Salve, questo è un messaggio di notifica del forum %(site_title)s.\n" + +#: templates/email/footer.html:1 +#, python-format +msgid "Sincerely,<br>%(site_name)s Administrator" +msgstr "<p>Cordialmente,<br/>l'amministratore di %(site_name)s</p>" + +#: templates/email/instant_notification.html:6 +#, python-format +msgid "" +"\n" +"<p style=\"font-size:10px; font-style:italic;\">\n" +"Please note - you can easily <a href=\"%(user_subscriptions_url)s\">change</a>\n" +"how often you receive these notifications or unsubscribe. Thank you for your interest in our forum!</p>\n" +msgstr "" +"\n" +"<p style=\"font-size:10px; font-style:italic;\">\n" +"Puoi <a href=\"%(user_subscriptions_url)s\">configurare</a> la frequenza con cui ti vengono inviati questi aggiornamenti o eliminarli. Grazie per la tua partecipazione a questo forum!</p>\n" + +#: templates/email/insufficient_rep_to_post_by_email.html:10 +#, python-format +msgid "%(username)s, your question could not be posted by email just yet." +msgstr "%(username)s, la domanda potrebbe non essere ancora inviata da email." + +#: templates/email/insufficient_rep_to_post_by_email.html:14 +#, python-format +msgid "" +"To make posts by email, you need to receive about %(min_upvotes)s upvotes." +msgstr "" +"Per creare i messaggi e-mail, è necessario ricevere circa %(min_upvotes)s " +"voti positivi." + +#: templates/email/insufficient_rep_to_post_by_email.html:15 +#, python-format +msgid "At this time, please post your question at %(link)s" +msgstr "A questo punto, poni la domanda a %(link)s" + +#: templates/email/macros.html:15 +#, python-format +msgid "Question by %(author)s:" +msgstr "Domanda da %(author)s:" + +#: templates/email/macros.html:17 +#, python-format +msgid "" +"\n" +" In reply to %(author)s's question:\n" +" " +msgstr "" +"\n" +"In risposta alla domanda di %(author)s:" + +#: templates/email/macros.html:22 +msgid "Question :" +msgstr "Domanda:" + +#: templates/email/macros.html:28 +#, python-format +msgid "Asked by %(author)s:" +msgstr "Chiesto da %(author)s:" + +#: templates/email/macros.html:34 +msgid "Tags:" +msgstr "Tags" + +#: templates/email/macros.html:42 +#, python-format +msgid "" +"\n" +" %(author)s's answer:\n" +" " +msgstr "" +"\n" +"risposta di %(author)s:\n" +" " + +#: templates/email/macros.html:46 +#, python-format +msgid "" +"\n" +" In reply to %(author)s's answer:\n" +" " +msgstr "" +"\n" +"In risposta alla risposta di %(author)s:" + +#: templates/email/macros.html:51 +#, python-format +msgid "Answered by %(author)s:" +msgstr "Risposta da %(author)s:" + +#: templates/email/macros.html:58 +#, python-format +msgid "" +"\n" +" %(author)s's comment:\n" +" " +msgstr "" +"\n" +"Commento di %(author)s:" + +#: templates/email/macros.html:62 +#, python-format +msgid "" +"\n" +" In reply to %(author)s's comment:\n" +" " +msgstr "" +"\n" +"In risposta al commento di %(author)s:" + +#: templates/email/macros.html:67 +#, python-format +msgid "" +"\n" +" Commented by %(author)s:\n" +" " +msgstr "" +"\n" +"Commentato da %(author)s:" + +#: templates/email/notify_author_about_approved_post.html:20 +msgid "Below is a copy of your post:" +msgstr "Di seguito è una copia del tuo post:" + +#: templates/email/post_as_subthread.html:8 +#, python-format +msgid "" +"\n" +" %(comment)s comment:\n" +" " +msgid_plural "" +"\n" +" %(comment)s comments:\n" +" " +msgstr[0] "" +"\n" +"%(comment)s commento:" +msgstr[1] "" +"\n" +"%(comment)s commenti:" + +#: templates/email/re_welcome_lamson_on.html:2 +#: templates/email/re_welcome_lamson_on.html:3 +#, python-format +msgid "Great, you are ready to use %(site_name)s!" +msgstr "Grande, sei pronto per l'uso di %(site_name)s !" + +#: templates/email/re_welcome_lamson_on.html:6 +#, python-format +msgid "You can post questions by emailing them at %(ask_address)s." +msgstr "È possibile inviare domande inviando una mail a %(ask_address)s." + +#: templates/email/re_welcome_lamson_on.html:7 +msgid "" +"When you receive update notifications, you will be able to respond to them, " +"also by email." +msgstr "" +"Quando ricevi le notifiche di aggiornamento, sarai in grado di rispondere " +"anche via email." + +#: templates/email/re_welcome_lamson_on.html:8 +#, python-format +msgid "" +"Of course, you can always visit the %(site_name)s at <a " +"href=\"%(site_url)s\">%(site_url)s</a>" +msgstr "" +"Naturalmente, si può sempre visitare %(site_name)s a <a " +"href=\"%(site_url)s\">%(site_url)s</a>" + +#: templates/email/rejected_post.html:2 templates/email/rejected_post.html:3 +msgid " Your post was rejected. " +msgstr " Il tuo post è stato respinto. " + +#: templates/email/rejected_post.html:5 +msgid "Your post (copied in the end), was rejected for the following reason:" +msgstr "" +"Il tuo post (copiato alla fine), è stata respinto per il seguente motivo:" + +#: templates/email/rejected_post.html:7 +msgid "Here is your original post" +msgstr "Ecco il post originale" + +#: templates/email/reply_by_email_error.html:1 +msgid "" +"\n" +"<p>The system was unable to process your message successfully, the reason being:<p>\n" +msgstr "" +"\n" +"<p>Il sistema non è riuscito ad elaborare il tuo messaggio con successo; il motivo è: <p>\n" + +#: templates/email/welcome_lamson_off.html:6 +#: templates/email/welcome_lamson_off.html:7 +#: templates/email/welcome_lamson_on.html:3 +#: templates/email/welcome_lamson_on.html:4 +#, python-format +msgid "Welcome to %(site_name)s!" +msgstr "Benvenuti in %(site_name)s !" + +#: templates/email/welcome_lamson_off.html:10 +msgid "We look forward to your Questions!" +msgstr "Aspettiamo le tue domande!" + +#: templates/email/welcome_lamson_on.html:11 +msgid "" +"Important: <em>Please reply</em> to this message, without editing it. We " +"need this to determine your email signature and that the email address is " +"valid and was typed correctly." +msgstr "" +"Importante: <em>si prega di rispondere</em> a questo messaggio, senza " +"modificarlo. Per determinare la tua firma email abbiamo bisogno che " +"l'indirizzo sia valido e sia stato digitato correttamente." + +#: templates/email/welcome_lamson_on.html:14 +#, python-format +msgid "" +"Until we receive the response from you, you will not be able ask or answer " +"questions on %(site_name)s by email." +msgstr "" +"Fino a quando non riceveremo la tua risposta, non potrai chiedere o " +"rispondere a domande su %(site_name)s via email." + +#: templates/embed/ask_by_widget.html:174 +msgid "Please enter a descriptive title for your question" +msgstr "Inserisci un titolo descrittivo per la tua domanda" + +#: templates/embed/list_widgets.html:39 +msgid "How to use?" +msgstr "Come si usa?" + +#: templates/embed/list_widgets.html:40 +msgid "" +"\n" +" Just copy the <script> tag provided and paste it in the site where you wan to put it.\n" +" " +msgstr "" +"\n" +" Basta copiare il <script> tag fornito ed incollarlo nel sito dove si vuole di metterlo.\n" +" " + +#: templates/embed/widget_form.html:3 templates/embed/widget_form.html.py:5 +#, python-format +msgid "%(action)s an %(widget_name)s widget" +msgstr "%(action)s un %(widget_name)s widget" + +#: templates/embed/widget_form.html:14 +#: templates/user_profile/user_moderate.html:20 +msgid "Save" +msgstr "Salva" + +#: templates/embed/widgets.html:3 templates/embed/widgets.html.py:5 +msgid "Widgets" +msgstr "Widget" + +#: templates/embed/widgets.html:11 +msgid "" +"Create and embed widgets into your sites, here a list of available widgets." +msgstr "" +"Crea ed incorpora widget nei tuoi siti, qui un elenco dei widget " +"disponibili." + +#: templates/embed/widgets.html:16 +msgid "Ask a question" +msgstr "Chiedi" + +#: templates/embed/widgets.html:17 templates/embed/widgets.html.py:26 +msgid "create" +msgstr "crea" + +#: templates/embed/widgets.html:20 templates/embed/widgets.html.py:29 +msgid "view list" +msgstr "viste" + +#: templates/embed/widgets.html:25 +msgid "List of questions" +msgstr "Elenco delle domande" + +#: templates/group_messaging/home.html:7 +msgid "compose" +msgstr "componi" + +#: templates/group_messaging/macros.html:5 +#, python-format +msgid "You wrote on %(date)s:" +msgstr "Hai scritto il %(date)s:" + +#: templates/group_messaging/senders_list.html:2 +msgid "Inbox" +msgstr "Posta in arrivo" + +#: templates/group_messaging/senders_list.html:3 +msgid "Sent" +msgstr "Inviato" + +#: templates/group_messaging/senders_list.html:4 +msgid "Trash" +msgstr "Cestino" + +#: templates/group_messaging/senders_list.html:8 +msgid "Messages by sender:" +msgstr "Messaggio per autore" + +#: templates/group_messaging/senders_list.html:9 +msgid "all users" +msgstr "tutti gli utenti" + +#: templates/group_messaging/threads_list.html:15 +msgid "there are no messages yet..." +msgstr "non ci sono ancora messaggi..." + +#: templates/main_page/headline.html:4 views/readers.py:150 #, python-format msgid "%(q_num)s question" msgid_plural "%(q_num)s questions" msgstr[0] "%(q_num)s domanda" msgstr[1] "%(q_num)s domande" -#: skins/default/templates/main_page/headline.html:6 +#: templates/main_page/headline.html:6 #, python-format msgid "with %(author_name)s's contributions" msgstr "contenenti messaggi di %(author_name)s" -#: skins/default/templates/main_page/headline.html:12 -#, fuzzy +#: templates/main_page/headline.html:11 msgid "Tagged" msgstr "con i tag" -#: skins/default/templates/main_page/headline.html:24 +#: templates/main_page/headline.html:22 msgid "Search tips:" msgstr "Consigli per la ricerca:" -#: skins/default/templates/main_page/headline.html:27 +#: templates/main_page/headline.html:25 msgid "reset author" msgstr "azzera autore" -#: skins/default/templates/main_page/headline.html:29 -#: skins/default/templates/main_page/headline.html:32 -#: skins/default/templates/main_page/nothing_found.html:18 -#: skins/default/templates/main_page/nothing_found.html:21 -#, fuzzy +#: templates/main_page/headline.html:27 templates/main_page/headline.html:30 +#: templates/main_page/nothing_found.html:18 +#: templates/main_page/nothing_found.html:21 msgid " or " msgstr "oppure" -#: skins/default/templates/main_page/headline.html:30 +#: templates/main_page/headline.html:28 msgid "reset tags" msgstr "azzera i tag" -#: skins/default/templates/main_page/headline.html:33 -#: skins/default/templates/main_page/headline.html:36 +#: templates/main_page/headline.html:31 templates/main_page/headline.html:34 msgid "start over" msgstr "ricomincia da capo" -#: skins/default/templates/main_page/headline.html:38 +#: templates/main_page/headline.html:36 msgid " - to expand, or dig in by adding more tags and revising the query." msgstr "" "- per espandere, o raffinare la tua ricerca aggiungendo altri tag o " "modificando le parole chiave" -#: skins/default/templates/main_page/headline.html:41 +#: templates/main_page/headline.html:39 msgid "Search tip:" msgstr "Suggerimenti per la ricerca:" -#: skins/default/templates/main_page/headline.html:41 +#: templates/main_page/headline.html:39 msgid "add tags and a query to focus your search" msgstr "aggiungi tag e parole chiave per restringere il campo" -#: skins/default/templates/main_page/nothing_found.html:4 +#: templates/main_page/nothing_found.html:4 msgid "There are no unanswered questions here" msgstr "Non ci sono domande senza risposte" -#: skins/default/templates/main_page/nothing_found.html:7 -#, fuzzy +#: templates/main_page/nothing_found.html:7 msgid "No questions here. " -msgstr "Non ci sono domande preferite" +msgstr "Non ci sono domande." -#: skins/default/templates/main_page/nothing_found.html:8 -#, fuzzy +#: templates/main_page/nothing_found.html:8 msgid "Please follow some questions or follow some users." -msgstr "Aggiungi qualche domanda alla tua lista di domande preferite" +msgstr "" +"Aggiungi qualche domanda alla tua lista di domande preferite o segui qualche" +" utente" -#: skins/default/templates/main_page/nothing_found.html:13 +#: templates/main_page/nothing_found.html:13 msgid "You can expand your search by " msgstr "puoi espandere la tua ricerca" -#: skins/default/templates/main_page/nothing_found.html:16 +#: templates/main_page/nothing_found.html:16 msgid "resetting author" msgstr "azzerando l'autore" -#: skins/default/templates/main_page/nothing_found.html:19 +#: templates/main_page/nothing_found.html:19 msgid "resetting tags" msgstr "azzerando i tag" -#: skins/default/templates/main_page/nothing_found.html:22 -#: skins/default/templates/main_page/nothing_found.html:25 +#: templates/main_page/nothing_found.html:22 +#: templates/main_page/nothing_found.html:25 msgid "starting over" msgstr "ricominciando da capo" -#: skins/default/templates/main_page/nothing_found.html:30 +#: templates/main_page/nothing_found.html:30 msgid "Please always feel free to ask your question!" msgstr "Ricorda, puoi sempre porre tu stesso una domanda!" -#: skins/default/templates/main_page/questions_loop.html:11 +#: templates/main_page/questions_loop.html:9 msgid "Did not find what you were looking for?" msgstr "Non hai trovato quello che cercavi?" -#: skins/default/templates/main_page/questions_loop.html:12 +#: templates/main_page/questions_loop.html:10 msgid "Please, post your question!" msgstr "Poni tu stesso la domanda!" -#: skins/default/templates/main_page/tab_bar.html:10 +#: templates/main_page/tab_bar.html:10 msgid "subscribe to the questions feed" -msgstr "sottoscrivi al feed delle domande" +msgstr "sottoscrivi al feed della domanda" -#: skins/default/templates/main_page/tab_bar.html:11 +#: templates/main_page/tab_bar.html:11 msgid "RSS" -msgstr "" +msgstr "RSS" + +#: templates/main_page/tag_search.html:2 +msgid "Tag search" +msgstr "Ricerca per tag" -#: skins/default/templates/meta/bottom_scripts.html:7 +#: templates/main_page/tag_search.html:5 +msgid "search" +msgstr "cerca" + +#: templates/meta/bottom_scripts.html:7 #, python-format msgid "" "Please note: %(app_name)s requires javascript to work properly, please " -"enable javascript in your browser, <a href=\"%(noscript_url)s\">here is how</" -"a>" +"enable javascript in your browser, <a href=\"%(noscript_url)s\">here is " +"how</a>" msgstr "" +"Si prega di notare: %(app_name)s richiede i javascript per funzionare " +"correttamente, si prega di abilitare i javascript nel tuo browser <a " +"href=\"%(noscript_url)s\">Ecco come</a>" -#: skins/default/templates/meta/editor_data.html:7 -#, fuzzy, python-format +#: templates/meta/editor_data.html:7 +#, python-format msgid "each tag must be shorter that %(max_chars)s character" msgid_plural "each tag must be shorter than %(max_chars)s characters" -msgstr[0] "ogni tag deve essere più corto di %(max_chars)d carattere" -msgstr[1] "ogni tag deve essere più corto di %(max_chars)d caratteri" +msgstr[0] "ogni tag deve essere più corto di %(max_chars)s carattere" +msgstr[1] "ogni tag deve essere più corto di %(max_chars)s caratteri" -#: skins/default/templates/meta/editor_data.html:9 -#, fuzzy, python-format +#: templates/meta/editor_data.html:9 +#, python-format msgid "please use %(tag_count)s tag" msgid_plural "please use %(tag_count)s tags or less" -msgstr[0] "per favore usa un numero uguale o inferiore a %(tag_count)d tag" -msgstr[1] "per favore usa un numero uguale o inferiore a %(tag_count)d tags" +msgstr[0] "per favore usa un numero uguale o inferiore a %(tag_count)s tag" +msgstr[1] "per favore usa un numero uguale o inferiore a %(tag_count)s tag" -#: skins/default/templates/meta/editor_data.html:10 -#, fuzzy, python-format +#: templates/meta/editor_data.html:10 +#, python-format msgid "" "please use up to %(tag_count)s tags, less than %(max_chars)s characters each" -msgstr "fino a 5 tag, ognuno lungo al massimo 20 caratteri" +msgstr "" +"fino a %(tag_count)s tag, ognuno lungo al massimo %(max_chars)s caratteri" -#: skins/default/templates/question/answer_tab_bar.html:3 -#, fuzzy, python-format +#: templates/question/answer_card.html:20 +msgid "This response is published" +msgstr "Questa risposta è pubblicata" + +#: templates/question/answer_controls.html:2 +msgid "swap with question" +msgstr "Rispondi alla domanda" + +#: templates/question/answer_controls.html:7 +msgid "permanent link" +msgstr "link permanente" + +#: templates/question/answer_controls.html:8 +#: templates/widgets/markdown_help.html:20 +msgid "link" +msgstr "collegamento" + +#: templates/question/answer_controls.html:19 +msgid "unpublish" +msgstr "annulla la pubblicazione" + +#: templates/question/answer_controls.html:24 +msgid "publish" +msgstr "pubblica" + +#: templates/question/answer_controls.html:29 +#: templates/question/question_controls.html:4 +msgid "undelete" +msgstr "riattiva domanda" + +#: templates/question/answer_controls.html:35 +msgid "remove offensive flag" +msgstr "Rimuovi i flag inappropriati" + +#: templates/question/answer_controls.html:37 +#: templates/question/question_controls.html:16 +msgid "remove flag" +msgstr "rimuovi il flag" + +#: templates/question/answer_controls.html:42 +#: templates/question/answer_controls.html:50 +#: templates/question/question_controls.html:14 +#: templates/question/question_controls.html:20 +#: templates/question/question_controls.html:27 +msgid "" +"report as offensive (i.e containing spam, advertising, malicious text, etc.)" +msgstr "" +"segnala questo messaggio come offensivo (spam, pubblicità, insulti...)" + +#: templates/question/answer_controls.html:44 +#: templates/question/answer_controls.html:52 +#: templates/question/question_controls.html:22 +#: templates/question/question_controls.html:29 +msgid "flag offensive" +msgstr "segnala come offensivo" + +#: templates/question/answer_controls.html:62 +msgid "convert to comment" +msgstr "converti in commento" + +#: templates/question/answer_tab_bar.html:3 +#, python-format msgid "" "\n" " %(counter)s Answer\n" @@ -5697,418 +6746,614 @@ msgstr[1] "" "\n" "%(counter)s Risposte:" -#: skins/default/templates/question/answer_tab_bar.html:11 -#, fuzzy +#: templates/question/answer_tab_bar.html:11 msgid "Sort by »" msgstr "Ordina per:" -#: skins/default/templates/question/answer_tab_bar.html:14 +#: templates/question/answer_tab_bar.html:14 msgid "oldest answers will be shown first" msgstr "mostra prima le risposte più vecchie" -#: skins/default/templates/question/answer_tab_bar.html:17 +#: templates/question/answer_tab_bar.html:17 msgid "newest answers will be shown first" msgstr "mostra prima le risposte più nuove" -#: skins/default/templates/question/answer_tab_bar.html:20 +#: templates/question/answer_tab_bar.html:20 msgid "most voted answers will be shown first" msgstr "mostra prima le risposte più votate" -#: skins/default/templates/question/new_answer_form.html:16 -#, fuzzy +#: templates/question/answer_vote_buttons.html:6 +#: templates/user_profile/user_stats.html:25 +msgid "this answer has been selected as correct" +msgstr "questa risposta è stata accettata dall'autore" + +#: templates/question/answer_vote_buttons.html:8 +msgid "mark this answer as correct (click again to undo)" +msgstr "" +"segna questa risposta tra le preferite (clicca una seconda volta per " +"annullare)" + +#: templates/question/closed_question_info.html:2 +#, python-format +msgid "" +"The question has been closed for the following reason " +"<b>\"%(close_reason)s\"</b> <i>by" +msgstr "" +"Questa domanda è stata chiusa per il seguente motivo: " +"<b>\"%(close_reason)s\"</b> <i>da" + +#: templates/question/closed_question_info.html:4 +#, python-format +msgid "close date %(closed_at)s" +msgstr "data di chiusura %(closed_at)s" + +#: templates/question/content.html:37 +msgid "Edit Your Previous Answer" +msgstr "Modifica la tua risposta precedente" + +#: templates/question/content.html:38 +msgid "(only one answer per question is allowed)" +msgstr "(è consentita una sola risposta per ogni domanda)" + +#: templates/question/new_answer_form.html:15 msgid "Login/Signup to Answer" msgstr "Accedi/registrati per scrivere la tua risposta" -#: skins/default/templates/question/new_answer_form.html:24 +#: templates/question/new_answer_form.html:23 msgid "Your answer" msgstr "La tua risposta" -#: skins/default/templates/question/new_answer_form.html:26 -#, fuzzy +#: templates/question/new_answer_form.html:25 msgid "Be the first one to answer this question!" -msgstr "Per favore accetta la migliore risposta per questa domanda:" +msgstr "Diventa il primo a rispondere a questa domanda!" -#: skins/default/templates/question/new_answer_form.html:32 +#: templates/question/new_answer_form.html:31 msgid "" -"<span class='strong big'>Please start posting your answer anonymously</span> " -"- your answer will be saved within the current session and published after " -"you log in or create a new account. Please try to give a <strong>substantial " -"answer</strong>, for discussions, <strong>please use comments</strong> and " +"<span class='strong big'>Please start posting your answer anonymously</span>" +" - your answer will be saved within the current session and published after " +"you log in or create a new account. Please try to give a <strong>substantial" +" answer</strong>, for discussions, <strong>please use comments</strong> and " "<strong>please do remember to vote</strong> (after you log in)!" msgstr "" +"<span class='strong big'>Per favore inizia a postare la risposta in forma " +"anonima</span> - la risposta sarà salvata all'interno della sessione " +"corrente e pubblicata dopo il login o la creazione di un nuovo account. " +"Prova a dare una <strong>risposta adeguata</strong>; per le discussioni " +"<strong>si prega di utilizzare i commenti</strong> e <strong>ricordatevi di " +"votare</strong> (dopo il login)!" -#: skins/default/templates/question/new_answer_form.html:36 +#: templates/question/new_answer_form.html:35 msgid "" -"<span class='big strong'>You are welcome to answer your own question</span>, " -"but please make sure to give an <strong>answer</strong>. Remember that you " +"<span class='big strong'>You are welcome to answer your own question</span>," +" but please make sure to give an <strong>answer</strong>. Remember that you " "can always <strong>revise your original question</strong>. Please " "<strong>use comments for discussions</strong> and <strong>please don't " "forget to vote :)</strong> for the answers that you liked (or perhaps did " "not like)!" msgstr "" +"<span class='big strong'>Puoi rispondere alla tua domanda</span>, ma " +"assicurati di dare una <strong>risposta</strong> interessante. Ricorda che " +"puoi sempre <strong>rivedere la tua domanda " +"originale</strong>.<strong>Utilizza i commenti per le discussioni</strong> e" +" <strong>non dimenticare di votare :)</strong> per le risposte che ti sono " +"piaciute (o che forse non ti piacciono)!" -#: skins/default/templates/question/new_answer_form.html:38 +#: templates/question/new_answer_form.html:37 msgid "" "<span class='big strong'>Please try to give a substantial answer</span>. If " "you wanted to comment on the question or answer, just <strong>use the " -"commenting tool</strong>. Please remember that you can always <strong>revise " -"your answers</strong> - no need to answer the same question twice. Also, " -"please <strong>don't forget to vote</strong> - it really helps to select the " -"best questions and answers!" -msgstr "" +"commenting tool</strong>. Please remember that you can always <strong>revise" +" your answers</strong> - no need to answer the same question twice. Also, " +"please <strong>don't forget to vote</strong> - it really helps to select the" +" best questions and answers!" +msgstr "" +"<span class='big strong'>Per favore cerca di dare una risposta " +"opportuna</span>. Se si vuole commentare la domanda o la risposta, basta " +"<strong>utilizzare lo strumento di creazione commenti</strong>. Ricordati " +"che puoi sempre <strong>rivedere le tue risposte</strong> - non c'è bisogno " +"di rispondere alla stessa domanda due volte. Inoltre, per favore <strong>non" +" dimenticate di votare</strong> - aiuta davvero a selezionare le migliori " +"domande e risposte!" + +#: templates/question/question_controls.html:6 +msgid "reopen" +msgstr "riapri" + +#: templates/question/question_controls.html:8 +msgid "close" +msgstr "chiudi" + +#: templates/question/question_controls.html:35 +msgid "retag" +msgstr "modifica i tag" -#: skins/default/templates/question/sharing_prompt_phrase.html:2 +#: templates/question/sharing_prompt_phrase.html:2 #, python-format msgid "" "Know someone who can answer? Share a <a href=\"%(question_url)s\">link</a> " "to this question via" msgstr "" +"Conosci qualcuno che può rispondere? Condividi un <a " +"href=\"%(question_url)s\"> link</a> a questa domanda via" -#: skins/default/templates/question/sharing_prompt_phrase.html:8 -#, fuzzy +#: templates/question/sharing_prompt_phrase.html:8 msgid " or" msgstr "oppure" -#: skins/default/templates/question/sharing_prompt_phrase.html:10 +#: templates/question/sharing_prompt_phrase.html:10 msgid "email" msgstr "e-mail:" -#: skins/default/templates/question/sidebar.html:6 -#, fuzzy +#: templates/question/sidebar.html:8 msgid "Question tools" -msgstr "Tag" +msgstr "Strumenti per le domande" -#: skins/default/templates/question/sidebar.html:9 -#, fuzzy +#: templates/question/sidebar.html:11 msgid "click to unfollow this question" -msgstr "clicca qui per vedere le domande con più risposte" +msgstr "clicca per non seguire più questa domanda" -#: skins/default/templates/question/sidebar.html:10 -#, fuzzy +#: templates/question/sidebar.html:12 msgid "Following" -msgstr "Chiudi domanda" +msgstr "Utenti che mi seguono" -#: skins/default/templates/question/sidebar.html:11 -#, fuzzy +#: templates/question/sidebar.html:13 msgid "Unfollow" -msgstr "Chiudi domanda" +msgstr "Non seguire più" -#: skins/default/templates/question/sidebar.html:15 -#, fuzzy +#: templates/question/sidebar.html:17 msgid "click to follow this question" -msgstr "clicca qui per vedere le domande con più risposte" +msgstr "clicca qui per seguire la domanda" -#: skins/default/templates/question/sidebar.html:16 -#, fuzzy +#: templates/question/sidebar.html:18 msgid "Follow" -msgstr "Chiudi domanda" +msgstr "Segui" -#: skins/default/templates/question/sidebar.html:23 +#: templates/question/sidebar.html:25 #, python-format msgid "%(count)s follower" msgid_plural "%(count)s followers" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "%(count)s seguace" +msgstr[1] "%(count)s seguaci" -#: skins/default/templates/question/sidebar.html:29 -#, fuzzy +#: templates/question/sidebar.html:37 msgid "email the updates" -msgstr "notifiche via e-mail cancellate" +msgstr "notifiche via e-mail" -#: skins/default/templates/question/sidebar.html:32 +#: templates/question/sidebar.html:40 msgid "" "<strong>Here</strong> (once you log in) you will be able to sign up for the " "periodic email updates about this question." msgstr "" +"<strong>Qui</strong> (una volta loggati) sarete in grado di sottoscrivere " +"agli aggiornamenti email periodici su questa domanda." -#: skins/default/templates/question/sidebar.html:37 -#, fuzzy +#: templates/question/sidebar.html:45 msgid "subscribe to this question rss feed" -msgstr "sottoscrivi al feed delle domande" +msgstr "sottoscrivi al feed delle domanda" -#: skins/default/templates/question/sidebar.html:38 -#, fuzzy +#: templates/question/sidebar.html:46 msgid "subscribe to rss feed" -msgstr "sottoscrivi al feed delle domande" +msgstr "sottoscrivi al feed della domanda" -#: skins/default/templates/question/sidebar.html:46 -msgid "Stats" +#: templates/question/sidebar.html:55 +msgid "Invite" +msgstr "Invito" + +#: templates/question/sidebar.html:61 templates/question/sidebar.html.py:67 +#: templates/widgets/tag_selector.html:19 +#: templates/widgets/tag_selector.html:36 +#: templates/widgets/tag_selector.html:54 +msgid "add" +msgstr "aggiungi" + +#: templates/question/sidebar.html:63 templates/question/sidebar.html.py:69 +msgid "- or -" +msgstr "oppure" + +#: templates/question/sidebar.html:81 +msgid "share with everyone" +msgstr "condividi con tutti" + +#: templates/question/sidebar.html:92 +msgid "This question is currently shared only with:" +msgstr "Questa domanda è attualmente condiviso solo con:" + +#: templates/question/sidebar.html:94 +msgid "Individual users" +msgstr "Singoli utenti" + +#: templates/question/sidebar.html:99 +msgid "You" +msgstr "Si" + +#: templates/question/sidebar.html:106 templates/question/sidebar.html:126 +msgid "and" +msgstr "e" + +#: templates/question/sidebar.html:131 +#, python-format +msgid "%(more_count)s more" +msgstr "%(more_count)s ancora" + +#: templates/question/sidebar.html:137 +msgid "Public thread" +msgstr "Discussione pubblica" + +#: templates/question/sidebar.html:138 +#, python-format +msgid "" +"This thread is public, all members of %(site_name)s can read this page." msgstr "" +"Questo thread è pubblico, tutti i membri di %(site_name)s possono leggere " +"questa pagina." -#: skins/default/templates/question/sidebar.html:48 -#, fuzzy +#: templates/question/sidebar.html:146 +msgid "Stats" +msgstr "Statistiche" + +#: templates/question/sidebar.html:148 msgid "Asked" -msgstr "chiesto il" +msgstr "Creata" -#: skins/default/templates/question/sidebar.html:51 +#: templates/question/sidebar.html:151 msgid "Seen" -msgstr "" +msgstr "Vista" -#: skins/default/templates/question/sidebar.html:51 +#: templates/question/sidebar.html:151 msgid "times" msgstr "volte" -#: skins/default/templates/question/sidebar.html:54 -#, fuzzy +#: templates/question/sidebar.html:154 msgid "Last updated" -msgstr "Aggiornata l'ultima voltail" +msgstr "Aggiornata l'ultima volta" -#: skins/default/templates/question/sidebar.html:62 +#: templates/question/sidebar.html:162 msgid "Related questions" msgstr "Domande simili" -#: skins/default/templates/question/subscribe_by_email_prompt.html:5 -#, fuzzy +#: templates/question/subscribe_by_email_prompt.html:5 msgid "Email me when there are any new answers" +msgstr "Notificami via mail quando ci sono nuove risposte" + +#: templates/question/subscribe_by_email_prompt.html:11 +msgid "" +"<span class='strong'>Here</span> (once you log in) you will be able to sign " +"up for the periodic email updates about this question." msgstr "" -"<strong>Segnalami</strong> nuove risposte o aggiornamenti via e-mail ogni " -"settimana" +"<strong>Qui</strong> (una volta loggati) sarai in grado di sottoscriverti " +"agli aggiornamenti email periodici su questa domanda." + +#: templates/tags/header.html:6 +#, python-format +msgid "Tags, matching \"%(stag)s\"" +msgstr "Tags corrispondenti a \"%(stag)s\"" + +#: templates/tags/header.html:18 +msgid "sorted alphabetically" +msgstr "ordina i tag alfabeticamente" + +#: templates/tags/header.html:19 +msgid "by name" +msgstr "per nome" + +#: templates/tags/header.html:24 +msgid "sorted by frequency of tag use" +msgstr "ordina i tag per frequenza d'uso" + +#: templates/tags/header.html:25 +msgid "by popularity" +msgstr "per numero di voti" + +#: templates/tags/header.html:31 templates/tags/header.html.py:32 +msgid "suggested" +msgstr "suggerito" + +#: templates/user_inbox/base.html:6 templates/user_profile/user_tabs.html:12 +msgid "inbox" +msgstr "posta in arrivo" + +#: templates/user_inbox/base.html:14 +msgid "Sections:" +msgstr "Sezioni:" + +#: templates/user_inbox/base.html:19 +msgid "messages" +msgstr "messaggi/" + +#: templates/user_inbox/base.html:24 +#, python-format +msgid "forum responses (%(re_count)s)" +msgstr "risposte forum (%(re_count)s)" + +#: templates/user_inbox/base.html:31 +#, python-format +msgid "flagged items (%(flags_count)s)" +msgstr "elementi contrassegnati (%(flags_count)s)" + +#: templates/user_inbox/base.html:38 +msgid "group join requests" +msgstr "richieste di partecipazione al gruppo" + +#: templates/user_inbox/group_join_requests.html:4 +msgid "inbox - group join requests" +msgstr "posta in arrivo - richieste di partecipazione al gruppo" + +#: templates/user_inbox/group_join_requests.html:27 +msgid "Approve" +msgstr "Approva" + +#: templates/user_inbox/group_join_requests.html:43 +msgid "Deny" +msgstr "Negare" + +#: templates/user_inbox/messages.html:93 +msgid "inbox - messages" +msgstr "posta in arrivo - messaggi" + +#: templates/user_inbox/responses_and_flags.html:4 +msgid "inbox - responses" +msgstr "posta in arrivo - risposte" + +#: templates/user_inbox/responses_and_flags.html:8 +msgid "select:" +msgstr "seleziona:" + +#: templates/user_inbox/responses_and_flags.html:10 +msgid "seen" +msgstr "viste" + +#: templates/user_inbox/responses_and_flags.html:11 +msgid "new" +msgstr "nuove" + +#: templates/user_inbox/responses_and_flags.html:12 +msgid "none" +msgstr "nessuna" + +#: templates/user_inbox/responses_and_flags.html:15 +msgid "mark as seen" +msgstr "contrassegna come visto" + +#: templates/user_inbox/responses_and_flags.html:16 +msgid "mark as new" +msgstr "contrassegna come nuovo" + +#: templates/user_inbox/responses_and_flags.html:17 +msgid "dismiss" +msgstr "cancella" + +#: templates/user_inbox/responses_and_flags.html:19 +msgid "remove flags/approve" +msgstr "rimuovi i flag/approvali" + +#: templates/user_inbox/responses_and_flags.html:23 +msgid "delete post" +msgstr "cancella" -#: skins/default/templates/question/subscribe_by_email_prompt.html:11 -msgid "once you sign in you will be able to subscribe for any updates here" +#: templates/user_profile/reject_post_dialog.html:4 +msgid "Reject the post(s)?" +msgstr "Rifiutare il post?" + +#: templates/user_profile/reject_post_dialog.html:11 +msgid "1) Enter a brief description of why you are rejecting the post." msgstr "" -"Se ti registri, potrai scegliere di ricevere periodicamente aggiornamenti " -"via e-mail sullo stato di questa domanda." +"1) Inserisci una breve descrizione del motivo per cui rifiuti il post." + +#: templates/user_profile/reject_post_dialog.html:14 +msgid "2) Please enter details here. This text will be sent to the user." +msgstr "2) Inserire dettagli qui. Questo testo verrà inviato all'utente." + +#: templates/user_profile/reject_post_dialog.html:20 +#: templates/user_profile/reject_post_dialog.html:88 +msgid "Use this reason & reject" +msgstr "Utilizza questo motivo per rifiutare" + +#: templates/user_profile/reject_post_dialog.html:27 +#: templates/user_profile/reject_post_dialog.html:95 +msgid "Use other reason" +msgstr "Utilizza un altro motivo" + +#: templates/user_profile/reject_post_dialog.html:33 +msgid "Save reason, but do not reject" +msgstr "Salvare il motivo, ma non rifiutare" + +#: templates/user_profile/reject_post_dialog.html:43 +msgid "Please, choose a reason for the rejection." +msgstr "Scegliere un motivo per il rifiuto." + +#: templates/user_profile/reject_post_dialog.html:58 +msgid "Select this reason" +msgstr "Seleziona questo motivo" + +#: templates/user_profile/reject_post_dialog.html:65 +msgid "Delete this reason" +msgstr "Elimina questo motivo" + +#: templates/user_profile/reject_post_dialog.html:71 +msgid "Add a new reason" +msgstr "Aggiungere un nuovo motivo" -#: skins/default/templates/question/subscribe_by_email_prompt.html:12 +#: templates/user_profile/reject_post_dialog.html:81 msgid "" -"<span class='strong'>Here</span> (once you log in) you will be able to sign " -"up for the periodic email updates about this question." +"You have selected reason for the rejection <strong>\"<span class=\"selected-" +"reason-title\"></span>\"</strong>. The text below will be sent to the user " +"and the post(s) will be deleted:" msgstr "" +"È stato selezionato il motivo del rigetto <strong>\"<span class=\"selected-" +"reason-title\"></span>\"</strong>. Il testo qui sotto sarà inviato " +"all'utente e verranno cancellati i post:" + +#: templates/user_profile/reject_post_dialog.html:101 +msgid "Edit this reason" +msgstr "Modifica questo motivo" -#: skins/default/templates/user_profile/user.html:12 +#: templates/user_profile/user.html:12 #, python-format msgid "%(username)s's profile" -msgstr "profilo dell'utente %(username)s" +msgstr "Profilo di %(username)s" -#: skins/default/templates/user_profile/user_edit.html:4 +#: templates/user_profile/user_edit.html:4 msgid "Edit user profile" msgstr "Modifica profilo" -#: skins/default/templates/user_profile/user_edit.html:7 +#: templates/user_profile/user_edit.html:7 msgid "edit profile" msgstr "modifica profilo" -#: skins/default/templates/user_profile/user_edit.html:21 -#: skins/default/templates/user_profile/user_info.html:15 +#: templates/user_profile/user_edit.html:21 +#: templates/user_profile/user_info.html:15 msgid "change picture" msgstr "cambia immagine" -#: skins/default/templates/user_profile/user_edit.html:25 -#: skins/default/templates/user_profile/user_info.html:19 +#: templates/user_profile/user_edit.html:25 +#: templates/user_profile/user_info.html:19 msgid "remove" -msgstr "" +msgstr "rimuovi" -#: skins/default/templates/user_profile/user_edit.html:32 +#: templates/user_profile/user_edit.html:32 msgid "Registered user" msgstr "Utente registrato" -#: skins/default/templates/user_profile/user_edit.html:39 +#: templates/user_profile/user_edit.html:39 msgid "Screen Name" msgstr "Nome visualizzato" -#: skins/default/templates/user_profile/user_edit.html:59 -#, fuzzy +#: templates/user_profile/user_edit.html:59 msgid "(cannot be changed)" -msgstr "Account eliminato." +msgstr "(non può essere modificato)" -#: skins/default/templates/user_profile/user_edit.html:101 -#: skins/default/templates/user_profile/user_email_subscriptions.html:22 +#: templates/user_profile/user_edit.html:109 +#: templates/user_profile/user_email_subscriptions.html:22 msgid "Update" msgstr "Conferma" -#: skins/default/templates/user_profile/user_email_subscriptions.html:4 -#: skins/default/templates/user_profile/user_tabs.html:42 +#: templates/user_profile/user_email_subscriptions.html:4 +#: templates/user_profile/user_tabs.html:44 msgid "subscriptions" msgstr "notifiche" -#: skins/default/templates/user_profile/user_email_subscriptions.html:7 +#: templates/user_profile/user_email_subscriptions.html:7 msgid "Email subscription settings" msgstr "E-mail di notifica" -#: skins/default/templates/user_profile/user_email_subscriptions.html:9 +#: templates/user_profile/user_email_subscriptions.html:9 msgid "" "<span class='big strong'>Adjust frequency of email updates.</span> Receive " -"updates on interesting questions by email, <strong><br/>help the community</" -"strong> by answering questions of your colleagues. If you do not wish to " -"receive emails - select 'no email' on all items below.<br/>Updates are only " -"sent when there is any new activity on selected items." -msgstr "" - -#: skins/default/templates/user_profile/user_email_subscriptions.html:23 -#, fuzzy +"updates on interesting questions by email, <strong><br/>help the " +"community</strong> by answering questions of your colleagues. If you do not " +"wish to receive emails - select 'no email' on all items below.<br/>Updates " +"are only sent when there is any new activity on selected items." +msgstr "" +"<span class='big strong'>Regola la frequenza degli aggiornamenti via " +"e-mail.</span> Ricevi gli aggiornamenti sulle domande interessanti per " +"email, <strong><br/> aiuta la comunità</strong> rispondendo alle domande dei" +" tuoi colleghi. Se non desideri ricevere email - seleziona 'mai' " +"su tutti gli elementi qui sotto. <br/>Gli aggiornamenti vengono inviati solo" +" quando c'è qualche nuova attività sugli elementi selezionati." + +#: templates/user_profile/user_email_subscriptions.html:23 msgid "Stop Email" -msgstr "" -"<strong>Il tuo indirizzo e-mail</strong> (<i>deve essere valido, non sarà " -"mai rivelato agli altri utenti</i>)" +msgstr "Interrompere l'email" -#: skins/default/templates/user_profile/user_favorites.html:4 -#: skins/default/templates/user_profile/user_tabs.html:27 -#, fuzzy +#: templates/user_profile/user_favorites.html:4 +#: templates/user_profile/user_tabs.html:29 msgid "followed questions" -msgstr "Chiudi domanda" - -#: skins/default/templates/user_profile/user_inbox.html:18 -#: skins/default/templates/user_profile/user_tabs.html:12 -msgid "inbox" -msgstr "" - -#: skins/default/templates/user_profile/user_inbox.html:34 -#, fuzzy -msgid "Sections:" -msgstr "domande" - -#: skins/default/templates/user_profile/user_inbox.html:38 -#, python-format -msgid "forum responses (%(re_count)s)" -msgstr "" - -#: skins/default/templates/user_profile/user_inbox.html:43 -#, fuzzy, python-format -msgid "flagged items (%(flag_count)s)" -msgstr "per favore usa un numero uguale o inferiore a %(tag_count)d tag" - -#: skins/default/templates/user_profile/user_inbox.html:49 -#: skins/default/templates/user_profile/user_inbox.html:61 -#, fuzzy -msgid "select:" -msgstr "cancella" - -#: skins/default/templates/user_profile/user_inbox.html:51 -#: skins/default/templates/user_profile/user_inbox.html:63 -#, fuzzy -msgid "seen" -msgstr "ultimo accesso" - -#: skins/default/templates/user_profile/user_inbox.html:52 -#: skins/default/templates/user_profile/user_inbox.html:64 -#, fuzzy -msgid "new" -msgstr "più recenti" - -#: skins/default/templates/user_profile/user_inbox.html:53 -#: skins/default/templates/user_profile/user_inbox.html:65 -#, fuzzy -msgid "none" -msgstr "bronzo" - -#: skins/default/templates/user_profile/user_inbox.html:54 -#, fuzzy -msgid "mark as seen" -msgstr "ultimo accesso" - -#: skins/default/templates/user_profile/user_inbox.html:55 -#, fuzzy -msgid "mark as new" -msgstr "ha accettato una risposta" - -#: skins/default/templates/user_profile/user_inbox.html:56 -msgid "dismiss" -msgstr "" - -#: skins/default/templates/user_profile/user_inbox.html:66 -#, fuzzy -msgid "remove flags" -msgstr "vedi tutti i tag" - -#: skins/default/templates/user_profile/user_inbox.html:68 -#, fuzzy -msgid "delete post" -msgstr "cancella" +msgstr "domande preferite" -#: skins/default/templates/user_profile/user_info.html:36 +#: templates/user_profile/user_info.html:38 msgid "update profile" msgstr "aggiorna profilo" -#: skins/default/templates/user_profile/user_info.html:40 -#, fuzzy +#: templates/user_profile/user_info.html:42 msgid "manage login methods" -msgstr "Accedi o registrati per inserire domande" +msgstr "gestisci i metodi di login" -#: skins/default/templates/user_profile/user_info.html:53 +#: templates/user_profile/user_info.html:55 msgid "real name" msgstr "nome vero" -#: skins/default/templates/user_profile/user_info.html:58 -#, fuzzy +#: templates/user_profile/user_info.html:61 +msgid "groups" +msgstr "gruppi" + +#: templates/user_profile/user_info.html:71 +msgid "add group" +msgstr "aggiungi gruppo" + +#: templates/user_profile/user_info.html:76 msgid "member since" msgstr "membro dal" -#: skins/default/templates/user_profile/user_info.html:63 +#: templates/user_profile/user_info.html:81 msgid "last seen" msgstr "ultimo accesso" -#: skins/default/templates/user_profile/user_info.html:69 -#, fuzzy +#: templates/user_profile/user_info.html:87 msgid "website" -msgstr "Sito web" +msgstr "sito web" -#: skins/default/templates/user_profile/user_info.html:75 +#: templates/user_profile/user_info.html:93 msgid "location" msgstr "residenza" -#: skins/default/templates/user_profile/user_info.html:82 +#: templates/user_profile/user_info.html:100 msgid "age" msgstr "età" -#: skins/default/templates/user_profile/user_info.html:83 +#: templates/user_profile/user_info.html:101 msgid "age unit" msgstr "anni" -#: skins/default/templates/user_profile/user_info.html:88 +#: templates/user_profile/user_info.html:106 msgid "todays unused votes" msgstr "voti rimanenti per oggi" -#: skins/default/templates/user_profile/user_info.html:89 +#: templates/user_profile/user_info.html:107 msgid "votes left" msgstr "voti rimanenti" -#: skins/default/templates/user_profile/user_moderate.html:4 -#: skins/default/templates/user_profile/user_tabs.html:48 +#: templates/user_profile/user_moderate.html:4 +#: templates/user_profile/user_tabs.html:50 msgid "moderation" msgstr "modera" -#: skins/default/templates/user_profile/user_moderate.html:8 +#: templates/user_profile/user_moderate.html:8 #, python-format msgid "%(username)s's current status is \"%(status)s\"" msgstr "lo stato dell'utente %(username)s è \"%(status)s\"" -#: skins/default/templates/user_profile/user_moderate.html:11 +#: templates/user_profile/user_moderate.html:11 msgid "User status changed" msgstr "Lo stato dell'utente è stato modificato" -#: skins/default/templates/user_profile/user_moderate.html:20 -msgid "Save" -msgstr "Salva" - -#: skins/default/templates/user_profile/user_moderate.html:25 +#: templates/user_profile/user_moderate.html:25 #, python-format msgid "Your current reputation is %(reputation)s points" msgstr "Hai %(reputation)s punti reputazione" -#: skins/default/templates/user_profile/user_moderate.html:27 +#: templates/user_profile/user_moderate.html:27 #, python-format msgid "User's current reputation is %(reputation)s points" msgstr "Questo utente ha %(reputation)s punti reputazione" -#: skins/default/templates/user_profile/user_moderate.html:31 +#: templates/user_profile/user_moderate.html:31 msgid "User reputation changed" msgstr "La reputazione dell'utente è stata modificata" -#: skins/default/templates/user_profile/user_moderate.html:38 +#: templates/user_profile/user_moderate.html:38 msgid "Subtract" msgstr "Sottrai" -#: skins/default/templates/user_profile/user_moderate.html:39 +#: templates/user_profile/user_moderate.html:39 msgid "Add" msgstr "Aggiungi" -#: skins/default/templates/user_profile/user_moderate.html:43 +#: templates/user_profile/user_moderate.html:43 #, python-format msgid "Send message to %(username)s" msgstr "Spedisci messaggio a %(username)s" -#: skins/default/templates/user_profile/user_moderate.html:44 +#: templates/user_profile/user_moderate.html:44 msgid "" "An email will be sent to the user with 'reply-to' field set to your email " "address. Please make sure that your address is entered correctly." @@ -6116,617 +7361,738 @@ msgstr "" "Verrà spedita all'utente un'e-mail utilizzando il tuo indirizzo come campo " "'reply-to'. Assicurati che il tuo indirizzo sia inserito correttamente." -#: skins/default/templates/user_profile/user_moderate.html:46 +#: templates/user_profile/user_moderate.html:46 msgid "Message sent" msgstr "Messaggio spedito" -#: skins/default/templates/user_profile/user_moderate.html:64 +#: templates/user_profile/user_moderate.html:64 msgid "Send message" msgstr "Spedisci messaggio" -#: skins/default/templates/user_profile/user_moderate.html:74 +#: templates/user_profile/user_moderate.html:74 msgid "" "Administrators have privileges of normal users, but in addition they can " "assign/revoke any status to any user, and are exempt from the reputation " "limits." msgstr "" +"Gli amministratori hanno privilegi di utenti normali, ma in più possono " +"assegnare/revocare qualsiasi stato a qualsiasi utente e sono esenti da " +"limiti di reputazione." -#: skins/default/templates/user_profile/user_moderate.html:77 +#: templates/user_profile/user_moderate.html:77 msgid "" "Moderators have the same privileges as administrators, but cannot add or " "remove user status of 'moderator' or 'administrator'." msgstr "" +"Moderatori hanno gli stessi privilegi degli amministratori, ma non possono " +"aggiungere o rimuovere lo stato utente 'moderatore' o 'amministratore'." -#: skins/default/templates/user_profile/user_moderate.html:80 +#: templates/user_profile/user_moderate.html:80 msgid "'Approved' status means the same as regular user." -msgstr "" +msgstr "Lo stato 'approvato' si intende lo stesso come utente normale." -#: skins/default/templates/user_profile/user_moderate.html:83 -#, fuzzy +#: templates/user_profile/user_moderate.html:83 msgid "Suspended users can only edit or delete their own posts." msgstr "" -"Non puoi segnalare questo messaggio come inappropriato perché il tuo account " -"è sospeso." +"Utenti sospesi possono solo modificare o cancellare i propri messaggi." -#: skins/default/templates/user_profile/user_moderate.html:86 +#: templates/user_profile/user_moderate.html:86 msgid "" -"Blocked users can only login and send feedback to the site administrators." +"Blocked users can only login and send feedback to the site administrators, " +"their url and profile will also be hidden." msgstr "" +"Gli utenti bloccati possono solo accedere ed inviare feedback per gli " +"amministratori del sito." -#: skins/default/templates/user_profile/user_network.html:5 -#: skins/default/templates/user_profile/user_tabs.html:18 +#: templates/user_profile/user_network.html:5 +#: templates/user_profile/user_tabs.html:18 msgid "network" -msgstr "" +msgstr "rete" -#: skins/default/templates/user_profile/user_network.html:10 +#: templates/user_profile/user_network.html:10 #, python-format msgid "Followed by %(count)s person" msgid_plural "Followed by %(count)s people" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "Seguito da %(count)s persona" +msgstr[1] "Seguito da %(count)s persone" -#: skins/default/templates/user_profile/user_network.html:14 +#: templates/user_profile/user_network.html:21 #, python-format msgid "Following %(count)s person" msgid_plural "Following %(count)s people" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "Segui %(count)s persona" +msgstr[1] "Segui %(count)s persone" -#: skins/default/templates/user_profile/user_network.html:19 +#: templates/user_profile/user_network.html:33 msgid "" "Your network is empty. Would you like to follow someone? - Just visit their " "profiles and click \"follow\"" msgstr "" +"La tua rete è vuota. Ti piacerebbe seguire qualcuno? - Basta visitare i loro" +" profili e fare clic su \"Segui\"" -#: skins/default/templates/user_profile/user_network.html:21 -#, fuzzy, python-format +#: templates/user_profile/user_network.html:35 +#, python-format msgid "%(username)s's network is empty" -msgstr "profilo dell'utente %(username)s" +msgstr "la rete di %(username)s è vuota" -#: skins/default/templates/user_profile/user_recent.html:4 -#: skins/default/templates/user_profile/user_tabs.html:29 -#: skins/default/templates/user_profile/user_tabs.html:31 +#: templates/user_profile/user_recent.html:5 +#: templates/user_profile/user_tabs.html:31 +#: templates/user_profile/user_tabs.html:33 msgid "activity" msgstr "attività" -#: skins/default/templates/user_profile/user_recent.html:24 -#: skins/default/templates/user_profile/user_recent.html:28 +#: templates/user_profile/user_recent.html:25 +#: templates/user_profile/user_recent.html:29 msgid "source" -msgstr "" +msgstr "sorgente" -#: skins/default/templates/user_profile/user_reputation.html:11 +#: templates/user_profile/user_reputation.html:12 msgid "Your karma change log." msgstr "Registro dei tuoi punti reputazione" -#: skins/default/templates/user_profile/user_reputation.html:13 +#: templates/user_profile/user_reputation.html:14 #, python-format msgid "%(user_name)s's karma change log" msgstr "Registro dei punti reputazione di %(user_name)s" -#: skins/default/templates/user_profile/user_stats.html:5 -#: skins/default/templates/user_profile/user_tabs.html:7 +#: templates/user_profile/user_stats.html:6 +#: templates/user_profile/user_tabs.html:7 msgid "overview" msgstr "dettagli" -#: skins/default/templates/user_profile/user_stats.html:11 +#: templates/user_profile/user_stats.html:12 #, python-format msgid "<span class=\"count\">%(counter)s</span> Question" msgid_plural "<span class=\"count\">%(counter)s</span> Questions" msgstr[0] "<span class=\"count\">%(counter)s</span> Domanda" msgstr[1] "<span class=\"count\">%(counter)s</span> Domande" -#: skins/default/templates/user_profile/user_stats.html:16 -#, fuzzy +#: templates/user_profile/user_stats.html:17 msgid "Answer" msgid_plural "Answers" -msgstr[0] "risposta" -msgstr[1] "risposta" +msgstr[0] "Risposta" +msgstr[1] "Risposte" -#: skins/default/templates/user_profile/user_stats.html:24 +#: templates/user_profile/user_stats.html:25 #, python-format msgid "the answer has been voted for %(answer_score)s times" msgstr "questa risposta ha ricevuto %(answer_score)s voti" -#: skins/default/templates/user_profile/user_stats.html:34 +#: templates/user_profile/user_stats.html:35 #, python-format msgid "(%(comment_count)s comment)" msgid_plural "the answer has been commented %(comment_count)s times" msgstr[0] "(%(comment_count)s commento)" msgstr[1] "(%(comment_count)s commenti)" -#: skins/default/templates/user_profile/user_stats.html:44 +#: templates/user_profile/user_stats.html:45 #, python-format msgid "<span class=\"count\">%(cnt)s</span> Vote" msgid_plural "<span class=\"count\">%(cnt)s</span> Votes " msgstr[0] "<span class=\"count\">%(cnt)s</span> Voto" msgstr[1] "<span class=\"count\">%(cnt)s</span> Voti" -#: skins/default/templates/user_profile/user_stats.html:50 +#: templates/user_profile/user_stats.html:51 msgid "thumb up" msgstr "pollice su" -#: skins/default/templates/user_profile/user_stats.html:51 +#: templates/user_profile/user_stats.html:52 msgid "user has voted up this many times" msgstr "l'utente ha dato questo numero di voti a favore" -#: skins/default/templates/user_profile/user_stats.html:54 +#: templates/user_profile/user_stats.html:55 msgid "thumb down" msgstr "pollice in giù" -#: skins/default/templates/user_profile/user_stats.html:55 +#: templates/user_profile/user_stats.html:56 msgid "user voted down this many times" msgstr "l'utente ha dato questo numero di voti contro" -#: skins/default/templates/user_profile/user_stats.html:63 +#: templates/user_profile/user_stats.html:64 #, python-format msgid "<span class=\"count\">%(counter)s</span> Tag" msgid_plural "<span class=\"count\">%(counter)s</span> Tags" msgstr[0] "<span class=\"count\">%(counter)s</span> Tag" msgstr[1] "<span class=\"count\">%(counter)s</span> Tag" -#: skins/default/templates/user_profile/user_stats.html:97 +#: templates/user_profile/user_stats.html:109 #, python-format msgid "<span class=\"count\">%(counter)s</span> Badge" msgid_plural "<span class=\"count\">%(counter)s</span> Badges" msgstr[0] "<span class=\"count\">%(counter)s</span> Medaglia" msgstr[1] "<span class=\"count\">%(counter)s</span> Medaglie" -#: skins/default/templates/user_profile/user_stats.html:120 -#, fuzzy +#: templates/user_profile/user_stats.html:132 msgid "Answer to:" -msgstr "consigli per le risposte" +msgstr "Rispondi a:" -#: skins/default/templates/user_profile/user_tabs.html:5 -#, fuzzy +#: templates/user_profile/user_tabs.html:5 msgid "User profile" -msgstr "profilo utente" +msgstr "Profilo utente" -#: skins/default/templates/user_profile/user_tabs.html:10 views/users.py:638 +#: templates/user_profile/user_tabs.html:10 views/users.py:830 msgid "comments and answers to others questions" msgstr "commenti e risposte a domande" -#: skins/default/templates/user_profile/user_tabs.html:16 +#: templates/user_profile/user_tabs.html:16 msgid "followers and followed users" -msgstr "" +msgstr "seguaci ed utenti seguiti" -#: skins/default/templates/user_profile/user_tabs.html:21 -#, fuzzy +#: templates/user_profile/user_tabs.html:22 msgid "Graph of user karma" -msgstr "registro dei punti reputazione" +msgstr "Grafico del karma utente" -#: skins/default/templates/user_profile/user_tabs.html:25 -#, fuzzy +#: templates/user_profile/user_tabs.html:27 msgid "questions that user is following" msgstr "domande preferite da questo utente" -#: skins/default/templates/user_profile/user_tabs.html:34 views/users.py:679 +#: templates/user_profile/user_tabs.html:36 views/users.py:872 msgid "user vote record" msgstr "elenco dei voti dati" -#: skins/default/templates/user_profile/user_tabs.html:36 -#: skins/default/templates/user_profile/user_votes.html:4 +#: templates/user_profile/user_tabs.html:38 +#: templates/user_profile/user_votes.html:5 msgid "votes" msgstr "voti" -#: skins/default/templates/user_profile/user_tabs.html:40 views/users.py:769 +#: templates/user_profile/user_tabs.html:42 views/users.py:962 msgid "email subscription settings" msgstr "impostazioni notifiche via e-mail" -#: skins/default/templates/user_profile/user_tabs.html:46 views/users.py:205 +#: templates/user_profile/user_tabs.html:48 views/users.py:286 msgid "moderate this user" msgstr "modera questo utente" -#: skins/default/templates/widgets/answer_edit_tips.html:3 -#: skins/default/templates/widgets/question_edit_tips.html:3 +#: templates/widgets/answer_edit_tips.html:3 +#: templates/widgets/question_edit_tips.html:3 msgid "Tips" -msgstr "" +msgstr "Trucchi" -#: skins/default/templates/widgets/answer_edit_tips.html:6 -#, fuzzy +#: templates/widgets/answer_edit_tips.html:6 msgid "give an answer interesting to this community" msgstr "fai in modo che la tua risposta sia interessante per la comunità" -#: skins/default/templates/widgets/answer_edit_tips.html:9 +#: templates/widgets/answer_edit_tips.html:9 msgid "try to give an answer, rather than engage into a discussion" msgstr "cerca di dare una risposta, non di iniziare una discussione" -#: skins/default/templates/widgets/answer_edit_tips.html:12 -#: skins/default/templates/widgets/question_edit_tips.html:8 -#, fuzzy +#: templates/widgets/answer_edit_tips.html:12 +#: templates/widgets/question_edit_tips.html:8 msgid "provide enough details" msgstr "sii sufficientemente dettagliato" -#: skins/default/templates/widgets/answer_edit_tips.html:15 -#: skins/default/templates/widgets/question_edit_tips.html:11 +#: templates/widgets/answer_edit_tips.html:15 +#: templates/widgets/question_edit_tips.html:11 msgid "be clear and concise" msgstr "sii chiaro e conciso" -#: skins/default/templates/widgets/answer_edit_tips.html:20 -#: skins/default/templates/widgets/question_edit_tips.html:16 +#: templates/widgets/answer_edit_tips.html:20 +#: templates/widgets/question_edit_tips.html:16 msgid "see frequently asked questions" msgstr "vedi le domande frequenti" -#: skins/default/templates/widgets/answer_edit_tips.html:27 -#: skins/default/templates/widgets/question_edit_tips.html:22 -#, fuzzy -msgid "Markdown basics" -msgstr "sintassi Markdown" - -#: skins/default/templates/widgets/answer_edit_tips.html:31 -#: skins/default/templates/widgets/question_edit_tips.html:26 -msgid "*italic*" -msgstr "" - -#: skins/default/templates/widgets/answer_edit_tips.html:34 -#: skins/default/templates/widgets/question_edit_tips.html:29 -msgid "**bold**" -msgstr "" - -#: skins/default/templates/widgets/answer_edit_tips.html:38 -#: skins/default/templates/widgets/question_edit_tips.html:33 -#, fuzzy -msgid "*italic* or _italic_" -msgstr "*corsivo* o _corsivo_" - -#: skins/default/templates/widgets/answer_edit_tips.html:41 -#: skins/default/templates/widgets/question_edit_tips.html:36 -msgid "**bold** or __bold__" -msgstr "**grassetto** o __grassetto__" - -#: skins/default/templates/widgets/answer_edit_tips.html:45 -#: skins/default/templates/widgets/answer_edit_tips.html:49 -#: skins/default/templates/widgets/question_edit_tips.html:40 -#: skins/default/templates/widgets/question_edit_tips.html:45 -msgid "text" -msgstr "testo" - -#: skins/default/templates/widgets/answer_edit_tips.html:49 -#: skins/default/templates/widgets/question_edit_tips.html:45 -msgid "image" -msgstr "immagine" - -#: skins/default/templates/widgets/answer_edit_tips.html:53 -#: skins/default/templates/widgets/question_edit_tips.html:49 -msgid "numbered list:" -msgstr "lista numerata:" - -#: skins/default/templates/widgets/answer_edit_tips.html:58 -#: skins/default/templates/widgets/question_edit_tips.html:54 -msgid "basic HTML tags are also supported" -msgstr "sono supportati anche alcuni semplici tag HTML" - -#: skins/default/templates/widgets/answer_edit_tips.html:63 -#: skins/default/templates/widgets/question_edit_tips.html:59 -msgid "learn more about Markdown" -msgstr "informazioni su Markdown" - -#: skins/default/templates/widgets/ask_form.html:6 -msgid "login to post question info" -msgstr "" -"<span class=\"strong big\">Puoi cominciare ora a scrivere la tua domanda " -"come utente non registrato</span>. Quando avrai finito, sarai reindirizzato " -"alla pagina di accesso/registrazione. La tua domanda sarà salvata e " -"pubblicata non appena ti sarai registrato. Accedere al proprio account " -"richiede circa 30 secondi, registrarne uno nuovo meno di un minuto." +#: templates/widgets/ask_button.html:8 +msgid "Ask the Group" +msgstr "Chiedi al gruppo" -#: skins/default/templates/widgets/ask_form.html:7 +#: templates/widgets/ask_form.html:6 msgid "" "<span class=\\\"strong big\\\">You are welcome to start submitting your " "question anonymously</span>. When you submit the post, you will be " "redirected to the login/signup page. Your question will be saved in the " -"current session and will be published after you log in. Login/signup process " -"is very simple. Login takes about 30 seconds, initial signup takes a minute " -"or less." +"current session and will be published after you log in. Login/signup process" +" is very simple. Login takes about 30 seconds, initial signup takes a minute" +" or less." msgstr "" +"<span class=\\\"strong big\\\">Stai per postare la domanda in modo " +"anonimo</span>. Una volta inviata la domanda, verrai reindirizzato alla " +"pagina di login/registrazione. La domanda verrà salvata nella sessione " +"corrente e sarà pubblicata dopo il login. La procedura di " +"login/registrazione è molto semplice. La login richiede circa 30 secondi, " +"l'iscrizione iniziale richiede un minuto o meno." -#: skins/default/templates/widgets/ask_form.html:11 +#: templates/widgets/ask_form.html:10 #, python-format msgid "" "<span class='strong big'>Looks like your email address, %%(email)s has not " "yet been validated.</span> To post messages you must verify your email, " -"please see <a href='%%(email_validation_faq_url)s'>more details here</a>." -"<br>You can submit your question now and validate email after that. Your " -"question will saved as pending meanwhile." +"please see <a href='%%(email_validation_faq_url)s'>more details " +"here</a>.<br>You can submit your question now and validate email after that." +" Your question will saved as pending meanwhile." msgstr "" +"<span class='strong big'>Sembra che il tuo indirizzo email, %%(email)s non " +"sia stato convalidato.</span>Per postare messaggi devi verificare il tuo " +"indirizzo email, vedi <a href='%%(email_validation_faq_url)s'>maggiori " +"dettagli qui</a>.<br>Puoi postare la tua domanda ora e convalidare l'email " +"successivamente. Nel frattempo la domanda sarà salvato come sospesa." -#: skins/default/templates/widgets/contributors.html:3 +#: templates/widgets/contributors.html:3 msgid "Contributors" msgstr "Utenti attivi" -#: skins/default/templates/widgets/footer.html:33 +#: templates/widgets/edit_post.html:42 +msgid ", one of these is required" +msgstr ", uno di questi è necessario" + +#: templates/widgets/edit_post.html:51 templates/widgets/edit_post.html:56 +msgid "tags:" +msgstr "tag:" + +#: templates/widgets/edit_post.html:52 +msgid "(required)" +msgstr "(campo obbligatorio)" + +#: templates/widgets/edit_post.html:81 +msgid "Toggle the real time Markdown editor preview" +msgstr "attiva/disattiva l'anteprima del codice Markdown" + +#: templates/widgets/edit_post.html:95 +msgid "" +"To post on behalf of someone else, enter user name <strong>and</strong> " +"email below." +msgstr "" +"Per inviare per conto di qualcun altro, immettere il nome utente " +"<strong>e</strong> la email qui sotto." + +#: templates/widgets/footer.html:33 #, python-format msgid "Content on this site is licensed under a %(license)s" -msgstr "" +msgstr "I contenuti di questo sito sono creati sotto licenza %(license)s" -#: skins/default/templates/widgets/footer.html:38 +#: templates/widgets/footer.html:38 msgid "about" -msgstr "informazioni su Askbot" +msgstr "informazioni" -#: skins/default/templates/widgets/footer.html:40 -#: skins/default/templates/widgets/user_navigation.html:17 +#: templates/widgets/footer.html:40 templates/widgets/user_navigation.html:26 msgid "help" -msgstr "" +msgstr "guida" -#: skins/default/templates/widgets/footer.html:42 +#: templates/widgets/footer.html:42 msgid "privacy policy" msgstr "privacy" -#: skins/default/templates/widgets/footer.html:51 +#: templates/widgets/footer.html:51 msgid "give feedback" msgstr "contatti" -#: skins/default/templates/widgets/logo.html:3 +#: templates/widgets/group_info.html:3 +msgid "Group info" +msgstr "Informazioni gruppo" + +#: templates/widgets/group_info.html:26 +msgid "edit description" +msgstr "modifica la descrizione" + +#: templates/widgets/group_info.html:30 +msgid "change logo" +msgstr "cambia logo" + +#: templates/widgets/group_info.html:32 +msgid "delete logo" +msgstr "elimina logo" + +#: templates/widgets/group_info.html:36 +msgid "add logo" +msgstr "aggiungi logo" + +#: templates/widgets/group_info.html:46 +msgid "moderate emailed questions" +msgstr "modera domande via e-mail" + +#: templates/widgets/group_info.html:58 +msgid "show only selected answers to enquirers" +msgstr "visualizza solo risposte selezionate" + +#: templates/widgets/group_info.html:63 +msgid "How users join this group?" +msgstr "Come gli utenti possono partecipare a questo gruppo?" + +#: templates/widgets/group_info.html:87 +msgid "Make group VIP" +msgstr "Rendi un gruppo VIP" + +#: templates/widgets/group_info.html:93 +msgid "list of email addresses of pre-approved users" +msgstr "elenco di indirizzi email degli utenti approvati" + +#: templates/widgets/group_info.html:98 +msgid "List of preapproved email addresses" +msgstr "Elenco di indirizzi email preapprovati" + +#: templates/widgets/group_info.html:99 +msgid "" +"Users with these email adderesses will be added to the group automatically." +msgstr "" +"Gli utenti con questi indirizzi email verranno aggiunti automaticamente al " +"gruppo." + +#: templates/widgets/group_info.html:100 +msgid "edit preapproved emails" +msgstr "Modifica email preapprovate" + +#: templates/widgets/group_info.html:104 +msgid "list of preapproved email address domain names" +msgstr "elenco di nomi di dominio email approvati" + +#: templates/widgets/group_info.html:109 +msgid "List of preapproved email domain names" +msgstr "Elenco di nomi di dominio email approvati" + +#: templates/widgets/group_info.html:110 +msgid "" +"Users whose email adderesses belong to these domains will be added to the " +"group automatically." +msgstr "" +"Gli utenti i cui indirizzi email appartengono a questi domini verranno " +"aggiunti automaticamente al gruppo." + +#: templates/widgets/group_info.html:111 +msgid "edit preapproved email domains" +msgstr "modifica i domini email approvati" + +#: templates/widgets/logo.html:3 msgid "back to home page" msgstr "torna alla home page" -#: skins/default/templates/widgets/logo.html:4 -#, fuzzy, python-format +#: templates/widgets/logo.html:4 +#, python-format msgid "%(site)s logo" -msgstr "Logo del forum Q&A" +msgstr "Logo del forum %(site)s" + +#: templates/widgets/markdown_help.html:2 +msgid "Markdown basics" +msgstr "sintassi Markdown" + +#: templates/widgets/markdown_help.html:6 +msgid "*italic*" +msgstr "*corsivo*" + +#: templates/widgets/markdown_help.html:9 +msgid "**bold**" +msgstr "**grasssetto**" + +#: templates/widgets/markdown_help.html:13 +msgid "*italic* or _italic_" +msgstr "*corsivo* o _corsivo_" + +#: templates/widgets/markdown_help.html:16 +msgid "**bold** or __bold__" +msgstr "**grassetto** o __grassetto__" + +#: templates/widgets/markdown_help.html:20 +#: templates/widgets/markdown_help.html:24 +msgid "text" +msgstr "testo" + +#: templates/widgets/markdown_help.html:24 +msgid "image" +msgstr "immagine" + +#: templates/widgets/markdown_help.html:28 +msgid "numbered list:" +msgstr "lista numerata:" + +#: templates/widgets/markdown_help.html:33 +msgid "basic HTML tags are also supported" +msgstr "sono supportati anche alcuni semplici tag HTML" + +#: templates/widgets/markdown_help.html:38 +msgid "learn more about Markdown" +msgstr "informazioni su Markdown" -#: skins/default/templates/widgets/meta_nav.html:10 +#: templates/widgets/meta_nav.html:12 +msgid "people & groups" +msgstr "persone & gruppi" + +#: templates/widgets/meta_nav.html:20 msgid "users" msgstr "utenti" -#: skins/default/templates/widgets/meta_nav.html:15 +#: templates/widgets/meta_nav.html:27 msgid "badges" msgstr "medaglie" -#: skins/default/templates/widgets/question_edit_tips.html:5 -#, fuzzy +#: templates/widgets/question_edit_tips.html:5 msgid "ask a question interesting to this community" -msgstr "fai in modo che la tua risposta sia interessante per la comunità" +msgstr "fai in modo che la tua domanda sia interessante per la comunità" -#: skins/default/templates/widgets/question_summary.html:12 +#: templates/widgets/question_summary.html:12 msgid "view" msgid_plural "views" -msgstr[0] "consultazione" -msgstr[1] "consultazioni" +msgstr[0] "vista" +msgstr[1] "viste" -#: skins/default/templates/widgets/question_summary.html:29 -#, fuzzy +#: templates/widgets/question_summary.html:30 msgid "answer" msgid_plural "answers" msgstr[0] "risposta" -msgstr[1] "risposta" +msgstr[1] "risposte" -#: skins/default/templates/widgets/question_summary.html:40 +#: templates/widgets/question_summary.html:41 msgid "vote" msgid_plural "votes" msgstr[0] "voto" msgstr[1] "voti" -#: skins/default/templates/widgets/scope_nav.html:6 +#: templates/widgets/scope_nav.html:6 msgid "ALL" -msgstr "" +msgstr "TUTTE" -#: skins/default/templates/widgets/scope_nav.html:8 +#: templates/widgets/scope_nav.html:8 msgid "see unanswered questions" msgstr "vedi domande senza risposta" -#: skins/default/templates/widgets/scope_nav.html:8 +#: templates/widgets/scope_nav.html:8 msgid "UNANSWERED" -msgstr "" +msgstr "SENZA RISPOSTA" -#: skins/default/templates/widgets/scope_nav.html:11 -#, fuzzy +#: templates/widgets/scope_nav.html:11 msgid "see your followed questions" msgstr "vedi le tue domande preferite" -#: skins/default/templates/widgets/scope_nav.html:11 +#: templates/widgets/scope_nav.html:11 msgid "FOLLOWED" -msgstr "" +msgstr "PREFERITE" -#: skins/default/templates/widgets/scope_nav.html:14 -#, fuzzy +#: templates/widgets/scope_nav.html:14 msgid "Please ask your question here" -msgstr "Poni tu stesso la domanda!" +msgstr "Fai qui la tua domanda!" -#: skins/default/templates/widgets/user_long_score_and_badge_summary.html:3 -msgid "karma:" +#: templates/widgets/tag_selector.html:4 +msgid "Interesting tags" +msgstr "Tag preferiti" + +#: templates/widgets/tag_selector.html:21 +msgid "Ignored tags" +msgstr "Tag ignorati" + +#: templates/widgets/tag_selector.html:39 +msgid "Subscribed tags" +msgstr "Iscriviti per i tag" + +#: templates/widgets/tag_selector.html:57 +msgid "Show only questions from" +msgstr "Visualizza solo le domande da" + +#: templates/widgets/tag_selector.html:68 +msgid "Send me email alerts for" +msgstr "Inviami avvisi email per" + +#: templates/widgets/tag_selector.html:84 +msgid "Change frequency of emails" +msgstr "Cambia la frequenza delle email" + +#: templates/widgets/three_column_category_selector.html:4 +msgid "" +"Categorize your question using this tag selector or entering text in tag " +"box." msgstr "" +"Classifica la tua domanda utilizzando il selettore di tag od inserendo del " +"testo nella casella tag." + +#: templates/widgets/three_column_category_selector.html:7 +#: templates/widgets/three_column_category_selector.html:10 +msgid "(done editing)" +msgstr "(fatto la modifica)" + +#: templates/widgets/three_column_category_selector.html:8 +#: templates/widgets/three_column_category_selector.html:9 +#: templates/widgets/three_column_category_selector.html:11 +msgid "(edit categories)" +msgstr "(modifica categorie)" + +#: templates/widgets/user_long_score_and_badge_summary.html:4 +msgid "karma:" +msgstr "karma:" -#: skins/default/templates/widgets/user_long_score_and_badge_summary.html:7 -#, fuzzy +#: templates/widgets/user_long_score_and_badge_summary.html:10 msgid "badges:" msgstr "medaglie:" -#: skins/default/templates/widgets/user_navigation.html:9 -#, fuzzy +#: templates/widgets/user_navigation.html:17 msgid "sign out" -msgstr "signout/" +msgstr "disconnettiti" -#: skins/default/templates/widgets/user_navigation.html:12 -#, fuzzy -msgid "Hi, there! Please sign in" -msgstr "Puoi accedere al tuo account da qui:" +#: templates/widgets/user_navigation.html:20 +msgid "Hi there! Please sign in" +msgstr "Accedi" -#: skins/default/templates/widgets/user_navigation.html:15 +#: templates/widgets/user_navigation.html:23 msgid "settings" msgstr "impostazioni" -#: templatetags/extra_filters_jinja.py:279 -#, fuzzy +#: templates/widgets/user_navigation.html:24 +msgid "widgets" +msgstr "widgets" + +#: templatetags/extra_filters_jinja.py:288 msgid "no" -msgstr "bronzo" +msgstr "no" -#: utils/decorators.py:90 views/commands.py:73 views/commands.py:93 +#: utils/decorators.py:103 views/commands.py:144 msgid "Oops, apologies - there was some error" -msgstr "" +msgstr "Oops, scusa - c'è stato qualche errore" -#: utils/decorators.py:109 +#: utils/decorators.py:122 msgid "Please login to post" msgstr "Accedi o registrati per inserire domande" -#: utils/decorators.py:205 +#: utils/decorators.py:218 msgid "Spam was detected on your post, sorry for if this is a mistake" msgstr "" +"Dello spam è stato rilevato sul tuo post, siamo spiacenti se questo è un " +"errore" -#: utils/forms.py:33 +#: utils/decorators.py:242 +msgid "This function is limited to moderators and administrators" +msgstr "Questa funzione è limitata ai moderatori e amministratori" + +#: utils/forms.py:66 msgid "this field is required" msgstr "campo obbligatorio" -#: utils/forms.py:60 -#, fuzzy +#: utils/forms.py:93 msgid "Choose a screen name" msgstr "Scegli un nome utente" -#: utils/forms.py:69 +#: utils/forms.py:103 msgid "user name is required" msgstr "il nome utente è obbligatorio" -#: utils/forms.py:70 +#: utils/forms.py:104 msgid "sorry, this name is taken, please choose another" msgstr "mi spiace, questo nome utente è in uso, scegline un altro" -#: utils/forms.py:71 +#: utils/forms.py:105 msgid "sorry, this name is not allowed, please choose another" msgstr "mi spiace, questo nome utente non è consentito, scegline un altro" -#: utils/forms.py:72 +#: utils/forms.py:106 msgid "sorry, there is no user with this name" msgstr "mi spiace, questo nome utente è già in uso" -#: utils/forms.py:73 +#: utils/forms.py:107 msgid "sorry, we have a serious error - user name is taken by several users" msgstr "" "mi spiace, c'è un errore imprevisto — questo nome utente è già in uso " "da più di un utente" -#: utils/forms.py:74 +#: utils/forms.py:108 msgid "user name can only consist of letters, empty space and underscore" msgstr "il nome utente può contenere solo lettere, spazi, e _trattini_bassi_" -#: utils/forms.py:75 +#: utils/forms.py:109 msgid "please use at least some alphabetic characters in the user name" msgstr "" +"si prega di utilizzare almeno alcuni caratteri alfabetici nel nome utente" + +#: utils/forms.py:110 +msgid "symbol \"@\" is not allowed" +msgstr "il simbolo \"@\" non è consentito" -#: utils/forms.py:138 +#: utils/forms.py:215 msgid "Your email <i>(never shared)</i>" -msgstr "" +msgstr "La tua email <i>(mai condivisa)</i>" -#: utils/forms.py:139 +#: utils/forms.py:217 msgid "email address is required" msgstr "l'indirizzo e-mail è obbligatorio" -#: utils/forms.py:140 +#: utils/forms.py:218 msgid "please enter a valid email address" msgstr "inserisci un indirizzo e-mail valido" -#: utils/forms.py:141 +#: utils/forms.py:219 msgid "this email is already used by someone else, please choose another" msgstr "questa e-mail è già in uso, scegline un'altra" -#: utils/forms.py:170 +#: utils/forms.py:220 +msgid "this email address is not authorized" +msgstr "questo indirizzo e-mail non è autorizzato" + +#: utils/forms.py:260 msgid "password is required" msgstr "la password è obbligatoria" -#: utils/forms.py:173 +#: utils/forms.py:263 msgid "Password <i>(please retype)</i>" -msgstr "" +msgstr "Password <i>(Ripeti per favore)</i>" -#: utils/forms.py:174 +#: utils/forms.py:264 msgid "please, retype your password" msgstr "per favore, digita di nuovo la password" -#: utils/forms.py:175 +#: utils/forms.py:265 msgid "sorry, entered passwords did not match, please try again" msgstr "le due password non coincidono, riprova" -#: utils/functions.py:82 +#: utils/functions.py:101 msgid "2 days ago" msgstr "2 giorni fa" -#: utils/functions.py:84 +#: utils/functions.py:103 msgid "yesterday" msgstr "ieri" -#: utils/functions.py:87 +#: utils/functions.py:106 #, python-format msgid "%(hr)d hour ago" msgid_plural "%(hr)d hours ago" msgstr[0] "%(hr)d ora fa" msgstr[1] "%(hr)d ore fa" -#: utils/functions.py:93 +#: utils/functions.py:112 #, python-format msgid "%(min)d min ago" msgid_plural "%(min)d mins ago" msgstr[0] "%(min)d minuto fa" msgstr[1] "%(min)d minuti fa" -#: utils/mail.py:147 -msgid "" -"<p>To ask by email, please:</p>\n" -"<ul>\n" -" <li>Format the subject line as: [Tag1; Tag2] Question title</li>\n" -" <li>Type details of your question into the email body</li>\n" -"</ul>\n" -"<p>Note that tags may consist of more than one word, and tags\n" -"may be separated by a semicolon or a comma</p>\n" -msgstr "" - -#: utils/mail.py:167 -#, python-format -msgid "" -"<p>Sorry, there was an error posting your question please contact the " -"%(site)s administrator</p>" -msgstr "" - -#: utils/mail.py:173 -#, python-format -msgid "" -"<p>Sorry, in order to post questions on %(site)s by email, please <a href=" -"\"%(url)s\">register first</a></p>" -msgstr "" - -#: utils/mail.py:181 -msgid "" -"<p>Sorry, your question could not be posted due to insufficient privileges " -"of your user account</p>" -msgstr "" - #: views/avatar_views.py:99 msgid "Successfully uploaded a new avatar." -msgstr "" +msgstr "Caricato un nuovo avatar." #: views/avatar_views.py:140 msgid "Successfully updated your avatar." -msgstr "" +msgstr "Aggiornato con successo il tuo avatar." #: views/avatar_views.py:180 msgid "Successfully deleted the requested avatars." -msgstr "" +msgstr "Eliminati gli avatar richiesti." -#: views/commands.py:83 +#: views/commands.py:121 +msgid "your post was not accepted" +msgstr "il tuo post non è stato accettato" + +#: views/commands.py:134 msgid "Sorry, but anonymous users cannot access the inbox" msgstr "" "Spiacenti, gli utenti anonimi non possono accedere ai messaggi in arrivo" -#: views/commands.py:112 -#, fuzzy +#: views/commands.py:163 msgid "Sorry, anonymous users cannot vote" msgstr "mi spiace, devi essere registrato per votare" -#: views/commands.py:129 +#: views/commands.py:180 msgid "Sorry you ran out of votes for today" msgstr "hai superato il massimo giornaliero di voti consentiti" -#: views/commands.py:135 +#: views/commands.py:186 #, python-format msgid "You have %(votes_left)s votes left for today" msgstr "Puoi votare ancora %(votes_left)s volte oggi" -#: views/commands.py:210 +#: views/commands.py:261 msgid "Sorry, something is not right here..." msgstr "Mi spiace, qualcosa non va qui..." -#: views/commands.py:229 +#: views/commands.py:280 msgid "Sorry, but anonymous users cannot accept answers" msgstr "mi spiace, devi essere registrato per accettare una risposta" -#: views/commands.py:339 -#, fuzzy, python-format +#: views/commands.py:390 +#, python-format msgid "" "Your subscription is saved, but email address %(email)s needs to be " "validated, please see <a href=\"%(details_url)s\">more details here</a>" @@ -6735,180 +8101,488 @@ msgstr "" "dev'essere verificato, leggi <a href='%(details_url)s'>qui</a> per maggiori " "dettagli" -#: views/commands.py:348 +#: views/commands.py:399 msgid "email update frequency has been set to daily" msgstr "" "la frequenza delle notifiche via e-mail è stata impostata a 'ogni giorno'" -#: views/commands.py:464 +#: views/commands.py:682 #, python-format msgid "Tag subscription was canceled (<a href=\"%(url)s\">undo</a>)." msgstr "" +"La sottoscrizione al tag è stata annullata (<a " +"href=\"%(url)s\">Annulla</a>)." -#: views/commands.py:473 +#: views/commands.py:691 #, python-format msgid "Please sign in to subscribe for: %(tags)s" msgstr "Accedi per sottoscrivere i tag: %(tags)s" -#: views/commands.py:600 +#: views/commands.py:832 msgid "Please sign in to vote" msgstr "Accedi per votare" -#: views/commands.py:620 -#, fuzzy +#: views/commands.py:852 msgid "Please sign in to delete/restore posts" -msgstr "Accedi per votare" +msgstr "Accedi per cancellare/ripristinare messaggi" + +#: views/commands.py:1274 views/commands.py:1307 +msgid "Sorry, looks like sharing request was invalid" +msgstr "" +"Siamo spiacenti, sembra che la richiesta di condivisione non sia valida" -#: views/meta.py:37 -#, fuzzy, python-format +#: views/commands.py:1330 +#, python-format +msgid "%(user)s, welcome to group %(group)s!" +msgstr "%(user)s, benvenuti nel gruppo %(group)s!" + +#: views/commands.py:1380 +msgid "Sorry, only thread moderators can use this function" +msgstr "" +"Siamo spiacenti, solo moderatori del thread possono utilizzare questa " +"funzione" + +#: views/commands.py:1395 +msgid "The answer is now unpublished" +msgstr "La risposta non è ancora stata pubblicata" + +#: views/commands.py:1399 +msgid "The answer is now published" +msgstr "La risposta è stata pubblicata" + +#: views/meta.py:44 +#, python-format msgid "About %(site)s" -msgstr "il %(date)s" +msgstr "Riguardo %(site)s" #: views/meta.py:92 +msgid "Please sign in or register to send your feedback" +msgstr "Per favore accedi o registrati per inviare commenti" + +#: views/meta.py:109 msgid "Q&A forum feedback" msgstr "Contatti forum Q&A" -#: views/meta.py:93 +#: views/meta.py:110 msgid "Thanks for the feedback!" msgstr "Grazie per il tuo messaggio!" -#: views/meta.py:102 +#: views/meta.py:119 msgid "We look forward to hearing your feedback! Please, give it next time :)" msgstr "" "Siamo curiosi di sentire la tua opinione! Sarà per la prossima volta :)" -#: views/meta.py:106 +#: views/meta.py:123 msgid "Privacy policy" msgstr "Regole per la privacy" -#: views/readers.py:133 -#, python-format -msgid "%(q_num)s question, tagged" -msgid_plural "%(q_num)s questions, tagged" -msgstr[0] "%(q_num)s domanda, taggata" -msgstr[1] "%(q_num)s domande, taggate" +#: views/meta.py:209 +msgid "Suggested tags" +msgstr "Tag suggeriti" -#: views/readers.py:388 +#: views/readers.py:406 msgid "" "Sorry, the comment you are looking for has been deleted and is no longer " "accessible" msgstr "Mi spiace, questo commento è stata cancellato e non è più accessibile" -#: views/users.py:206 +#: views/users.py:287 msgid "moderate user" msgstr "modera utente" -#: views/users.py:381 +#: views/users.py:499 msgid "user profile" msgstr "profilo utente" -#: views/users.py:382 +#: views/users.py:500 msgid "user profile overview" msgstr "profilo" -#: views/users.py:551 +#: views/users.py:674 msgid "recent user activity" msgstr "attività recente" -#: views/users.py:552 +#: views/users.py:675 msgid "profile - recent activity" msgstr "profilo utente — attività recente" -#: views/users.py:639 +#: views/users.py:705 +msgid "group joining requests" +msgstr "richieste di partecipazione al gruppo" + +#: views/users.py:706 +msgid "profile - moderation" +msgstr "profilo - moderazione" + +#: views/users.py:762 +msgid "private messages" +msgstr "messaggi privati" + +#: views/users.py:763 +msgid "profile - messages" +msgstr "profilo - messaggi" + +#: views/users.py:831 msgid "profile - responses" msgstr "profilo utente — risposte" -#: views/users.py:680 +#: views/users.py:873 msgid "profile - votes" msgstr "profilo utente — voti" -#: views/users.py:701 +#: views/users.py:894 msgid "user karma" -msgstr "" +msgstr "karma utente" -#: views/users.py:702 -#, fuzzy +#: views/users.py:895 msgid "Profile - User's Karma" -msgstr "profilo utente — reputazione" +msgstr "Profilo - Karma utente" -#: views/users.py:720 +#: views/users.py:913 msgid "users favorite questions" msgstr "domande preferite" -#: views/users.py:721 +#: views/users.py:914 msgid "profile - favorite questions" msgstr "profilo utente — domande preferite" -#: views/users.py:741 views/users.py:745 +#: views/users.py:934 views/users.py:938 msgid "changes saved" msgstr "i cambiamenti sono stati salvati" -#: views/users.py:751 +#: views/users.py:944 msgid "email updates canceled" msgstr "notifiche via e-mail cancellate" -#: views/users.py:770 +#: views/users.py:963 msgid "profile - email subscriptions" msgstr "profilo utente — notifiche via e-mail" -#: views/writers.py:60 +#: views/users.py:983 +#, python-format +msgid "profile - %(section)s" +msgstr "profilo - %(section)s" + +#: views/writers.py:65 msgid "Sorry, anonymous users cannot upload files" msgstr "Mi spiace, gli utenti non registrati non possono caricare file." -#: views/writers.py:73 +#: views/writers.py:82 #, python-format msgid "allowed file types are '%(file_types)s'" msgstr "i tipi di file consentiti sono: '%(file_types)s'" -#: views/writers.py:84 +#: views/writers.py:95 #, python-format msgid "maximum upload file size is %(file_size)sK" msgstr "la dimensione massima di file caricabile è %(file_size)sK" -#: views/writers.py:92 -msgid "Error uploading file. Please contact the site administrator. Thank you." +#: views/writers.py:103 +msgid "" +"Error uploading file. Please contact the site administrator. Thank you." msgstr "Errore nel caricamento del file. Contatta un amministratore." -#: views/writers.py:189 +#: views/writers.py:200 msgid "" -"<span class=\"strong big\">You are welcome to start submitting your question " -"anonymously</span>. When you submit the post, you will be redirected to the " -"login/signup page. Your question will be saved in the current session and " +"<span class=\"strong big\">You are welcome to start submitting your question" +" anonymously</span>. When you submit the post, you will be redirected to the" +" login/signup page. Your question will be saved in the current session and " "will be published after you log in. Login/signup process is very simple. " "Login takes about 30 seconds, initial signup takes a minute or less." msgstr "" +"<span class=\"strong big\">Stai per postare la domanda in modo " +"anonimo</span>. Una volta inviata la domanda, verrai reindirizzato alla " +"pagina di login/registrazione. La domanda verrà salvata nella sessione " +"corrente e sarà pubblicata dopo il login. La procedura di " +"login/registrazione è molto semplice. La login richiede circa 30 secondi, l'" +" iscrizione iniziale richiede un minuto o meno." -#: views/writers.py:466 +#: views/writers.py:527 msgid "Please log in to answer questions" msgstr "Accedi per rispondere alle domande" -#: views/writers.py:572 +#: views/writers.py:648 #, python-format msgid "" -"Sorry, you appear to be logged out and cannot post comments. Please <a href=" -"\"%(sign_in_url)s\">sign in</a>." +"Sorry, you appear to be logged out and cannot post comments. Please <a " +"href=\"%(sign_in_url)s\">sign in</a>." msgstr "" -"Gli utenti non registrati non possono lasciare commenti. <a href=" -"\"%(sign_in_url)s\">Accedi o registrati</a>." +"Gli utenti non registrati non possono lasciare commenti. <a " +"href=\"%(sign_in_url)s\">Accedi o registrati</a>." -#: views/writers.py:589 +#: views/writers.py:665 msgid "Sorry, anonymous users cannot edit comments" msgstr "" "Mi spiace, gli utenti non registrati non possono modificare i commenti." -#: views/writers.py:619 +#: views/writers.py:698 #, python-format msgid "" "Sorry, you appear to be logged out and cannot delete comments. Please <a " "href=\"%(sign_in_url)s\">sign in</a>." msgstr "" -"Gli utenti non registrati non possono cancellare commenti. <a href=" -"\"%(sign_in_url)s\">Accedi o registrati</a>." +"Gli utenti non registrati non possono cancellare commenti. <a " +"href=\"%(sign_in_url)s\">Accedi o registrati</a>." -#: views/writers.py:640 +#: views/writers.py:719 msgid "sorry, we seem to have some technical difficulties" msgstr "Mi spiace, ci sono dei problemi tecnici" +#: views/writers.py:786 +msgid "the selected answer cannot be a comment" +msgstr "la risposta selezionata non può essere un commento" + +#~ msgid "" +#~ "\n" +#~ "%(count)s comment:\n" +#~ msgid_plural "" +#~ "\n" +#~ "%(count)s comments:\n" +#~ msgstr[0] "" +#~ "\n" +#~ "%(count)s commenti:\n" +#~ msgstr[1] "" +#~ "\n" +#~ "%(count)s commento:\n" + +#~ msgid "latest questions" +#~ msgstr "domande recenti" + +#~ msgid "======= Reply above this line. ====-=-=" +#~ msgstr "======= Rispondi sopra questa linea. ====-=-=" + +#~ msgid "" +#~ "Your message was malformed. Please make sure to qoute the " +#~ "original notification you received at the end of your reply." +#~ msgstr "" +#~ "La tua domanda è mal formata. Assicurati di citare la notifica originale che" +#~ " hai ricevuto alla fine della tua risposta." + +#~ msgid "LDAP Server USERID field name" +#~ msgstr "Nome utente del provider LDAP" + +#~ msgid "Skin: view, vote and answer counters" +#~ msgstr "Skin: contatori per consultazioni, voti e risposte" + +#~ msgid "Vote counter value to give \"full color\"" +#~ msgstr "Numero di voti necessari per utilizzare il \"colore pieno\"" + +#~ msgid "Background color for votes = 0" +#~ msgstr "colore di sfondo quando non ci sono voti" + +#~ msgid "HTML color name or hex value" +#~ msgstr "Nome del colore HTML o valore esadecimale" + +#~ msgid "Foreground color for votes = 0" +#~ msgstr "Colore del testo per le domande senza voti" + +#~ msgid "Background color for votes" +#~ msgstr "Colore di sfondo per le domande con voti" + +#~ msgid "Foreground color for votes" +#~ msgstr "Colore del testo per le domande con voti" + +#~ msgid "Background color for votes = MAX" +#~ msgstr "Colore di sfondo per le domande con il massimo numero di voti" + +#~ msgid "Foreground color for votes = MAX" +#~ msgstr "Colore del testo per le domande con il massimo numero di voti" + +#~ msgid "View counter value to give \"full color\"" +#~ msgstr "Numero di consultazioni necessarie per utilizzare il \"colore pieno\"" + +#~ msgid "Background color for views = 0" +#~ msgstr "Colore di sfondo per le domande senza consultazioni" + +#~ msgid "Foreground color for views = 0" +#~ msgstr "Colore del testo per le domande senza consultazioni" + +#~ msgid "Background color for views" +#~ msgstr "Colore di sfondo per le domande con consultazioni" + +#~ msgid "Foreground color for views" +#~ msgstr "Colore del testo per le domande con consultazioni" + +#~ msgid "Background color for views = MAX" +#~ msgstr "" +#~ "Colore di sfondo per le domande con il massimo numero di consultazioni" + +#~ msgid "Foreground color for views = MAX" +#~ msgstr "" +#~ "Colore del testo per le domande con il massimo numero di consultazioni" + +#~ msgid "Answer counter value to give \"full color\"" +#~ msgstr "Numero di risposte necessarie per utilizzare il \"colore pieno\"" + +#~ msgid "Background color for answers = 0" +#~ msgstr "Colore di sfondo per le domande senza risposte" + +#~ msgid "Foreground color for answers = 0" +#~ msgstr "Colore del testo per le domande senza risposte" + +#~ msgid "Background color for answers" +#~ msgstr "Colore di sfondo per le domande con risposte" + +#~ msgid "Foreground color for answers" +#~ msgstr "Colore del testo per le domande con risposte" + +#~ msgid "Background color for answers = MAX" +#~ msgstr "Colore di sfondo per le domande con il massimo numero di risposte" + +#~ msgid "Foreground color for answers = MAX" +#~ msgstr "Colore del testo per le domande con il massimo numero di risposte" + +#~ msgid "Background color for accepted" +#~ msgstr "Colore di sfondo per le domande con una <risposta accettata" + +#~ msgid "Foreground color for accepted answer" +#~ msgstr "Colore del testo per le domande con una <risposta accettata" + +#~ msgid "Number of questions to show" +#~ msgstr "Numero di domande da mostrare di default" + +#~ msgid "Header for the questions widget" +#~ msgstr "Intestazione per il widget di domande" + +#~ msgid "Footer for the questions widget" +#~ msgstr "Piè di pagina per il widget di domande" + +#~ msgid "off" +#~ msgstr "off" + +#~ msgid "only selected" +#~ msgstr "unico selezionato" + +#~ msgid "your email needs to be validated see %(details_url)s" +#~ msgstr "" +#~ "Il tuo indirizzo e-mail dev'essere verificato — vedi %(details_url)s" + +#~ msgid "<strong>Receive forum updates by email</strong>" +#~ msgstr "<strong>Ricevi gli aggiornamenti del forum via email</strong>" + +#~ msgid "please select one of the options above" +#~ msgstr "scegli una delle opzioni qui sopra" + +#~ msgid "<strong>Receive periodic updates by email</strong>" +#~ msgstr "<strong>Ricevere aggiornamenti periodici per email</strong>" + +#~ msgid "Display tag filter" +#~ msgstr "Mostra il tag filtro per i tag" + +#~ msgid "" +#~ "msgid \"silver badge: occasionally awarded for the very high quality " +#~ "contributions" +#~ msgstr "" +#~ "msgid \"medaglia d'argento: occasionalmente assegnata per i contributi di " +#~ "alta qualità" + +#~ msgid "<p>Dear %(receiving_user_name)s,</p>" +#~ msgstr "<p>Caro %(receiving_user_name)s,</p>" + +#~ msgid "" +#~ "\n" +#~ "<p>%(update_author_name)s left a <a href=\"%(post_url)s\">new comment</a>:</p>\n" +#~ msgstr "" +#~ "\n" +#~ "<p>%(update_author_name)s ha lasciato un <a href=\"%%(post_url)s\">nuovo commento</a>:</p>\n" + +#~ msgid "" +#~ "\n" +#~ "<p>%(update_author_name)s left a <a href=\"%(post_url)s\">new comment</a></p>\n" +#~ msgstr "" +#~ "\n" +#~ "<p>%(update_author_name)s ha lasciato un <a href=\"%%(post_url)s\">nuovo commento</a></p>\n" + +#~ msgid "" +#~ "\n" +#~ "<p>%(update_author_name)s answered a question \n" +#~ "<a href=\"%(post_url)s\">%(origin_post_title)s</a></p>\n" +#~ msgstr "" +#~ "\n" +#~ "<p>%(update_author_name)s ha risposto alla domanda\n" +#~ "<a href=\"%(post_url)s\">%(origin_post_title)s</a></p>\n" + +#~ msgid "" +#~ "\n" +#~ "<p>%(update_author_name)s posted a new question \n" +#~ "<a href=\"%(post_url)s\">%(origin_post_title)s</a></p>\n" +#~ msgstr "" +#~ "\n" +#~ "<p>%(update_author_name)s ha posto una nuova domanda <a href=\"%(post_url)s\">%(origin_post_title)s</a></p>\n" + +#~ msgid "" +#~ "\n" +#~ "<p>%(update_author_name)s updated an answer to the question\n" +#~ "<a href=\"%(post_url)s\">%(origin_post_title)s</a></p>\n" +#~ msgstr "" +#~ "\n" +#~ "<p>%(update_author_name)s ha modificato una risposta alla domanda <a href=\"%(post_url)s\">%(origin_post_title)s</a></p>\n" + +#~ msgid "" +#~ "\n" +#~ "<p>%(update_author_name)s updated a question \n" +#~ "<a href=\"%(post_url)s\">%(origin_post_title)s</a></p>\n" +#~ msgstr "" +#~ "\n" +#~ "<p>%(update_author_name)s ha modificato la domanda\n" +#~ "<a href=\"%(post_url)s\">%(origin_post_title)s</a></p>\n" + +#~ msgid "" +#~ "\n" +#~ "\n" +#~ "======= Reply above this line. ====-=-=\n" +#~ msgstr "" +#~ "\n" +#~ "======= Rispondi sopra questa linea. ====-=-=\n" + +#~ msgid "" +#~ "\n" +#~ "You can post an answer or a comment by replying to email notifications. To do that\n" +#~ "you need %(reply_by_email_karma_threshold)s karma, you have %(receiving_user_karma)s karma. \n" +#~ msgstr "" +#~ "\n" +#~ "Puoi postare una risposta o un commento rispondendo alle notifiche email. Per fare ciò avete bisogno di %(reply_by_email_karma_threshold)s; hai %(receiving_user_karma)s karma. \n" + +#~ msgid "Tag list" +#~ msgstr "Lista dei tag" + +#~ msgid "once you sign in you will be able to subscribe for any updates here" +#~ msgstr "" +#~ "Se ti registri, potrai scegliere di ricevere periodicamente aggiornamenti " +#~ "via e-mail sullo stato di questa domanda." + +#~ msgid "login to post question info" +#~ msgstr "" +#~ "<span class=\"strong big\">Puoi cominciare ora a scrivere la tua domanda " +#~ "come utente non registrato</span>. Quando avrai finito, sarai reindirizzato " +#~ "alla pagina di accesso/registrazione. La tua domanda sarà salvata e " +#~ "pubblicata non appena ti sarai registrato. Accedere al proprio account " +#~ "richiede circa 30 secondi, registrarne uno nuovo meno di un minuto." + +#~ msgid "Hi, there! Please sign in" +#~ msgstr "Ehilà! Accedi" + +#~ msgid "" +#~ "<p>To ask by email, please:</p>\n" +#~ "<ul>\n" +#~ " <li>Format the subject line as: [Tag1; Tag2] Question title</li>\n" +#~ " <li>Type details of your question into the email body</li>\n" +#~ "</ul>\n" +#~ "<p>Note that tags may consist of more than one word, and tags\n" +#~ "may be separated by a semicolon or a comma</p>\n" +#~ msgstr "" +#~ "<p>Per richiedere via email, prego:</p>\n" +#~ "<ul>\n" +#~ "<li>Formatta il soggetto come: [Tag1; Tag2] Titolo domanda</li>\n" +#~ "<li>Scrivi i dettagli della domanda nel corpo della email</li>\n" +#~ "</ul>\n" +#~ "<p>Nota che i tag possono essere composti di più di un a parola ed i tag devono essere separati da una virgola o punto e virgola</p>\n" + +#~ msgid "%(q_num)s question, tagged" +#~ msgid_plural "%(q_num)s questions, tagged" +#~ msgstr[0] "%(q_num)s domanda, taggata" +#~ msgstr[1] "%(q_num)s domande, taggate" + #~ msgid "use-these-chars-in-tags" #~ msgstr "usa-questi-caratteri-nei-tag" @@ -6947,21 +8621,21 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ "%(num) domande sul forum Q&A:</p>" #~ msgid "" -#~ "Please visit the askbot and see what's new! Could you spread the word " -#~ "about it - can somebody you know help answering those questions or " -#~ "benefit from posting one?" +#~ "Please visit the askbot and see what's new! Could you spread the word about " +#~ "it - can somebody you know help answering those questions or benefit from " +#~ "posting one?" #~ msgstr "" #~ "Visita Askbot e controlla cosa c'è di nuovo! Spargi la voce: qualcuno che " #~ "conosci può rispondere a queste domande, o trovare utile porne una?" #~ msgid "" -#~ "Your most frequent subscription setting is 'daily' on selected questions. " -#~ "If you are receiving more than one email per dayplease tell about this " -#~ "issue to the askbot administrator." +#~ "Your most frequent subscription setting is 'daily' on selected questions. If" +#~ " you are receiving more than one email per dayplease tell about this issue " +#~ "to the askbot administrator." #~ msgstr "" -#~ "Hai scelto di ricevere gli aggiornamenti al massimo 'ogni giorno' su " -#~ "alcune domande. Se ricevi più di un messaggio per giorno per favore " -#~ "notifica questo problema all'amministratore di Askbot." +#~ "Hai scelto di ricevere gli aggiornamenti al massimo 'ogni giorno' su alcune " +#~ "domande. Se ricevi più di un messaggio per giorno per favore notifica questo" +#~ " problema all'amministratore di Askbot." #~ msgid "" #~ "Your most frequent subscription setting is 'weekly' if you are receiving " @@ -6983,12 +8657,8 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ "go to %(email_settings_link)s to change frequency of email updates or " #~ "%(admin_email)s administrator" #~ msgstr "" -#~ "<p>Ricorda che puoi <a href='%(email_settings_link)s'>modificare</a> la " -#~ "frequenza degli aggiornamenti via e-mail o disabilitarli completamente." -#~ "<br/>\n" -#~ "Se credi di avere ricevuto questo messaggio erroneamente, per favore " -#~ "avverti l'amministratore del forum all'indirizzo %(admin_email)s.</" -#~ "p><p>Cordialmente,</p><p>Il tuo amico server del forum Q&A</p>" +#~ "<p>Ricorda che puoi <a href='%(email_settings_link)s'>modificare</a> la frequenza degli aggiornamenti via e-mail o disabilitarli completamente.<br/>\n" +#~ "Se credi di avere ricevuto questo messaggio erroneamente, per favore avverti l'amministratore del forum all'indirizzo %(admin_email)s.</p><p>Cordialmente,</p><p>Il tuo amico server del forum Q&A</p>" #~ msgid "" #~ "uploading images is limited to users with >%(min_rep)s reputation points" @@ -6998,15 +8668,15 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "blocked users cannot post" #~ msgstr "" -#~ "Mi spiace, il tuo account è stato bloccato; non puoi fare nuovi post " -#~ "finché la questione non verrà risolta. Contatta l'amministratore del " -#~ "forum per trovare una soluzione." +#~ "Mi spiace, il tuo account è stato bloccato; non puoi fare nuovi post finché " +#~ "la questione non verrà risolta. Contatta l'amministratore del forum per " +#~ "trovare una soluzione." #~ msgid "suspended users cannot post" #~ msgstr "" -#~ "Mi spiace, il tuo account è stato sospeso; non puoi fare nuovi post " -#~ "finché la questione non verrà risolta. Puoi però modificare i tuoi vecchi " -#~ "post. Contatta l'amministratore del forum per trovare una soluzione." +#~ "Mi spiace, il tuo account è stato sospeso; non puoi fare nuovi post finché " +#~ "la questione non verrà risolta. Puoi però modificare i tuoi vecchi post. " +#~ "Contatta l'amministratore del forum per trovare una soluzione." #~ msgid "cannot flag message as offensive twice" #~ msgstr "" @@ -7015,13 +8685,13 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "blocked users cannot flag posts" #~ msgstr "" -#~ "Non puoi segnalare questo messaggio come inappropriato perché il tuo " -#~ "account è stato bloccato." +#~ "Non puoi segnalare questo messaggio come inappropriato perché il tuo account" +#~ " è stato bloccato." #~ msgid "suspended users cannot flag posts" #~ msgstr "" -#~ "Non puoi segnalare questo messaggio come inappropriato perché il tuo " -#~ "account è sospeso." +#~ "Non puoi segnalare questo messaggio come inappropriato perché il tuo account" +#~ " è sospeso." #~ msgid "need > %(min_rep)s points to flag spam" #~ msgstr "" @@ -7030,22 +8700,19 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "%(max_flags_per_day)s exceeded" #~ msgstr "" -#~ "Mi spiace, hai già segnalato %(max_flags_per_day)s post come offensivi " -#~ "oggi, hai superato il massimo giornaliero." +#~ "Mi spiace, hai già segnalato %(max_flags_per_day)s post come offensivi oggi," +#~ " hai superato il massimo giornaliero." -#, fuzzy #~ msgid "blocked users cannot remove flags" #~ msgstr "" -#~ "Non puoi segnalare questo messaggio come inappropriato perché il tuo " -#~ "account è stato bloccato." +#~ "Non puoi segnalare questo messaggio come inappropriato perché il tuo account" +#~ " è stato bloccato." -#, fuzzy #~ msgid "suspended users cannot remove flags" #~ msgstr "" -#~ "Non puoi segnalare questo messaggio come inappropriato perché il tuo " -#~ "account è sospeso." +#~ "Non puoi segnalare questo messaggio come inappropriato perché il tuo account" +#~ " è sospeso." -#, fuzzy #~ msgid "need > %(min_rep)d point to remove flag" #~ msgid_plural "need > %(min_rep)d points to remove flag" #~ msgstr[0] "" @@ -7075,42 +8742,40 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "change %(email)s info" #~ msgstr "" -#~ "Se vuoi usare un nuovo indirizzo per le<strong>e-mail di notifica</" -#~ "strong>, \n" -#~ "<span class=\"strong big\">inseriscilo qui sotto il nuovo indirizzo</" -#~ "span>.<br>L'indirizzo corrente è <strong>%(email)s</strong>" +#~ "Se vuoi usare un nuovo indirizzo per le<strong>e-mail di notifica</strong>, \n" +#~ "<span class=\"strong big\">inseriscilo qui sotto il nuovo indirizzo</span>.<br>L'indirizzo corrente è <strong>%(email)s</strong>" #~ msgid "here is why email is required, see %(gravatar_faq_url)s" #~ msgstr "" -#~ "<span class='strong big'>Inserisci il tuo indirizzo e-mail qui sotto</" -#~ "span> È obbligatorio inserire un indirizzo e-mail valido. Se lo " -#~ "desideri, puoi ricevere <strong>messaggi di notifica</strong> sulle " -#~ "domande che ti interessano o sull'intero forum. Inoltre, il tuo indirizzo " -#~ "è usato per creare un'immagine <a " -#~ "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a> unica per il " -#~ "tuo account. Il tuo indirizzo e-mail non sarà mai pubblicato o comunicato " -#~ "a terze parti." +#~ "<span class='strong big'>Inserisci il tuo indirizzo e-mail qui sotto</span> " +#~ "È obbligatorio inserire un indirizzo e-mail valido. Se lo desideri, " +#~ "puoi ricevere <strong>messaggi di notifica</strong> sulle domande che ti " +#~ "interessano o sull'intero forum. Inoltre, il tuo indirizzo è usato per " +#~ "creare un'immagine <a " +#~ "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a> unica per il tuo " +#~ "account. Il tuo indirizzo e-mail non sarà mai pubblicato o comunicato a " +#~ "terze parti." #~ msgid "Your new Email" #~ msgstr "" -#~ "<strong>Il tuo nuovo indirizzo e-mail:</strong> (non verrà <strong>mai</" -#~ "strong> rivelato agli altri utenti, deve essere valido)" +#~ "<strong>Il tuo nuovo indirizzo e-mail:</strong> (non verrà " +#~ "<strong>mai</strong> rivelato agli altri utenti, deve essere valido)" #~ msgid "validate %(email)s info or go to %(change_email_url)s" #~ msgstr "" #~ "<span class=\"strong big\">Un'e-mail di verifica è stata spedita a " -#~ "%(email)s.</span> <strong>Clicca sul link contenuto nell'e-mail</strong> " -#~ "per verificare il tuo indirizzo. La verifica dell'e-mail è necessaria " -#~ "per l'utilizzo del forum. Se preferisci usare <strong>un altro indirizzo</" -#~ "strong>, puoi <a href='%(change_email_url)s'><strong>cambiarlo di nuovo</" -#~ "strong></a>." +#~ "%(email)s.</span> <strong>Clicca sul link contenuto nell'e-mail</strong> per" +#~ " verificare il tuo indirizzo. La verifica dell'e-mail è necessaria per " +#~ "l'utilizzo del forum. Se preferisci usare <strong>un altro " +#~ "indirizzo</strong>, puoi <a href='%(change_email_url)s'><strong>cambiarlo di" +#~ " nuovo</strong></a>." #~ msgid "old %(email)s kept, if you like go to %(change_email_url)s" #~ msgstr "" #~ "<span class=\"strong big\">Il tuo indirizzo e-mail %(email)s non è stato " -#~ "modificato.</span> Se decidi di cambiarlo, puoi farlo dal tuo profilo " -#~ "utente o utilizzare di nuovo <a " -#~ "href='%(change_email_url)s'><strong>questa pagina</strong></a>." +#~ "modificato.</span> Se decidi di cambiarlo, puoi farlo dal tuo profilo utente" +#~ " o utilizzare di nuovo <a href='%(change_email_url)s'><strong>questa " +#~ "pagina</strong></a>." #~ msgid "your current %(email)s can be used for this" #~ msgstr "" @@ -7121,12 +8786,12 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "thanks for verifying email" #~ msgstr "" -#~ "<span class=\"big strong\">Grazie per aver verificato il tuo indirizzo e-" -#~ "mail!</span> Ora puoi <strong>scrivere domande</strong> e " -#~ "<strong>risposte</strong>. Puoi inoltre <strong>seguire gli sviluppi</" -#~ "strong> delle domande che più ti interessano: quando ci sono novità, ti " -#~ "sarà spedita un'e-mail di notifica <strong>una volta al giorno</strong> o " -#~ "meno." +#~ "<span class=\"big strong\">Grazie per aver verificato il tuo indirizzo " +#~ "e-mail!</span> Ora puoi <strong>scrivere domande</strong> e " +#~ "<strong>risposte</strong>. Puoi inoltre <strong>seguire gli " +#~ "sviluppi</strong> delle domande che più ti interessano: quando ci sono " +#~ "novità, ti sarà spedita un'e-mail di notifica <strong>una volta al " +#~ "giorno</strong> o meno." #~ msgid "email key not sent" #~ msgstr "E-mail di verifica non spedita" @@ -7134,92 +8799,81 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "email key not sent %(email)s change email here %(change_link)s" #~ msgstr "" #~ "<span class='big strong'>Il tuo indirizzo %(email)s è già stato " -#~ "verificato</span>, quindi l'e-mail non è stata spedita. Se necessario " -#~ "puoi <a href='%(change_link)s'>cambiare</a> l'indirizzo usato per le " -#~ "notifiche." +#~ "verificato</span>, quindi l'e-mail non è stata spedita. Se necessario puoi " +#~ "<a href='%(change_link)s'>cambiare</a> l'indirizzo usato per le notifiche." #~ msgid "register new %(provider)s account info, see %(gravatar_faq_url)s" #~ msgstr "" -#~ "<p><span class=\"big strong\">È la prima volta che accedi con il " -#~ "tuo account OpenID %(provider)s.</span> Imposta il <strong>nome " -#~ "visualizzato</strong> e il tuo <strong>indirizzo e-mail</strong>. Con " -#~ "esso puoi <strong>ricevere aggiornamenti</strong> sulle domande che più " -#~ "ti interessano; verrà inoltre usato per creare un'immagine unica " -#~ "associata al tuo account, detta <a " +#~ "<p><span class=\"big strong\">È la prima volta che accedi con il tuo " +#~ "account OpenID %(provider)s.</span> Imposta il <strong>nome " +#~ "visualizzato</strong> e il tuo <strong>indirizzo e-mail</strong>. Con esso " +#~ "puoi <strong>ricevere aggiornamenti</strong> sulle domande che più ti " +#~ "interessano; verrà inoltre usato per creare un'immagine unica associata al " +#~ "tuo account, detta <a " #~ "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>" #~ msgid "" #~ "%(username)s already exists, choose another name for \n" -#~ " %(provider)s. Email is required too, see " -#~ "%(gravatar_faq_url)s\n" +#~ " %(provider)s. Email is required too, see %(gravatar_faq_url)s\n" #~ " " #~ msgstr "" -#~ "<p><span class='strong big'>Oops... l'utente %(username)s esiste già.</" -#~ "span></p><p>Scegli un altro nome utente da visualizzare per il tuo " +#~ "<p><span class='strong big'>Oops... l'utente %(username)s esiste " +#~ "già.</span></p><p>Scegli un altro nome utente da visualizzare per il tuo " #~ "account OpenID %(provider)s. Inoltre, è necessario inserire " #~ "<strong>indirizzo e-mail</strong>. Con esso puoi <strong>ricevere " -#~ "aggiornamenti</strong> sulle domande che più ti interessano; verrà " -#~ "inoltre usato per creare un'immagine unica associata al tuo account, " -#~ "detta <a href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>" +#~ "aggiornamenti</strong> sulle domande che più ti interessano; verrà inoltre " +#~ "usato per creare un'immagine unica associata al tuo account, detta <a " +#~ "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>" #~ msgid "" #~ "register new external %(provider)s account info, see %(gravatar_faq_url)s" #~ msgstr "" -#~ "<p><p><span class=\"big strong\">È la prima volta che accedi con " -#~ "il tuo account OpenID %(provider)s.</span> </p><p>Puoi utilizzare il tuo " -#~ "nome utente %(provider)s come <strong>nome visualizzato</strong> oppure " +#~ "<p><p><span class=\"big strong\">È la prima volta che accedi con il " +#~ "tuo account OpenID %(provider)s.</span> </p><p>Puoi utilizzare il tuo nome " +#~ "utente %(provider)s come <strong>nome visualizzato</strong> oppure " #~ "sceglierne uno nuovo.</p><p>Inoltre, è necessario inserire un " #~ "<strong>indirizzo e-mail</strong> valido. Con esso puoi <strong>ricevere " -#~ "aggiornamenti</strong> sulle domande che più ti interessano; verrà " -#~ "inoltre usato per creare un'immagine unica associata al tuo account, " -#~ "detta <a href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>" +#~ "aggiornamenti</strong> sulle domande che più ti interessano; verrà inoltre " +#~ "usato per creare un'immagine unica associata al tuo account, detta <a " +#~ "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>" #~ msgid "register new Facebook connect account info, see %(gravatar_faq_url)s" #~ msgstr "" -#~ "<p><span class=\"big strong\">È la prima volta che accedi con il " -#~ "tuo account Facebook.</span> Scegli il tuo <strong>nome visualizzato</" -#~ "strong> e imposta il tuo <strong>indirizzo e-mail</strong>. Con esso puoi " +#~ "<p><span class=\"big strong\">È la prima volta che accedi con il tuo " +#~ "account Facebook.</span> Scegli il tuo <strong>nome visualizzato</strong> e " +#~ "imposta il tuo <strong>indirizzo e-mail</strong>. Con esso puoi " #~ "<strong>ricevere aggiornamenti</strong> sulle domande che più ti " -#~ "interessano; verrà inoltre usato per creare un'immagine unica associata " -#~ "al tuo account, detta <a href='%(gravatar_faq_url)s'><strong>gravatar</" -#~ "strong></a>.</p>" +#~ "interessano; verrà inoltre usato per creare un'immagine unica associata al " +#~ "tuo account, detta <a " +#~ "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>" #~ msgid "This account already exists, please use another." #~ msgstr "Questo nome utente è già in uso, scegline un altro." #~ msgid "Screen name label" #~ msgstr "" -#~ "<strong>Nome visualizzato</strong> (<i>verrà mostrato agli altri utenti</" -#~ "i>)" - -#~ msgid "Email address label" -#~ msgstr "" -#~ "<strong>Indirizzo e-mail</strong> (<i><strong>non</strong> verrà mostrato " -#~ "agli altri utenti, dev'essere valido</i>)" +#~ "<strong>Nome visualizzato</strong> (<i>verrà mostrato agli altri utenti</i>)" #~ msgid "receive updates motivational blurb" #~ msgstr "" -#~ "<strong>Ricevi aggiornamenti via e-mail</strong> — questo aiuterà " -#~ "la nostra comunità a crescere e diventare più utile.<br/>Normalmente " -#~ "questo forum <span class='orange'>Q&A</span> ti spedirà <strong>un'e-" -#~ "mail a settimana</strong> con un riassunto delle novità (se ce ne sono)" -#~ "<br/> Se lo desideri, modifica queste impostazioni." +#~ "<strong>Ricevi aggiornamenti via e-mail</strong> — questo aiuterà la " +#~ "nostra comunità a crescere e diventare più utile.<br/>Normalmente questo " +#~ "forum <span class='orange'>Q&A</span> ti spedirà <strong>un'e-mail a " +#~ "settimana</strong> con un riassunto delle novità (se ce ne sono)<br/> Se lo " +#~ "desideri, modifica queste impostazioni." #~ msgid "Tag filter tool will be your right panel, once you log in." #~ msgstr "" #~ "Quando accederai al sito, sulla destra troverai il pannello con i filtri " #~ "tag." -#~ msgid "create account" -#~ msgstr "registrati" - #~ msgid "" #~ "If you beleive that this message was sent in mistake - \n" #~ "no further action is needed. Just ingore this email, we apologize\n" #~ "for any inconvenience" #~ msgstr "" -#~ "Se hai ricevuto questo messaggio per errore, basta che tu ignori questa e-" -#~ "mail. Ci scusiamo per il problema." +#~ "Se hai ricevuto questo messaggio per errore, basta che tu ignori questa " +#~ "e-mail. Ci scusiamo per il problema." #~ msgid "Login" #~ msgstr "Accedi" @@ -7229,8 +8883,8 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "with openid it is easier" #~ msgstr "" -#~ "Con OpenID non devi creare un nome utente e una password per ogni sito " -#~ "che utilizzi." +#~ "Con OpenID non devi creare un nome utente e una password per ogni sito che " +#~ "utilizzi." #~ msgid "reuse openid" #~ msgstr "" @@ -7244,8 +8898,7 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "openid is supported open standard" #~ msgstr "" -#~ "OpenID è basato su uno standard aperto, supportato da molte " -#~ "organizzazioni." +#~ "OpenID è basato su uno standard aperto, supportato da molte organizzazioni." #~ msgid "Find out more" #~ msgstr "Scopri di più" @@ -7255,12 +8908,12 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "Traditional signup info" #~ msgstr "" -#~ "<span class='strong big'>Se preferisci, puoi scegliere un nome utente e " -#~ "una password per questo forum qui. Però</span>, considera che questo sito " +#~ "<span class='strong big'>Se preferisci, puoi scegliere un nome utente e una " +#~ "password per questo forum qui. Però</span>, considera che questo sito " #~ "supporta anche la registrazione via <strong>OpenID</strong>. Con " -#~ "<strong>OpenID</strong> puoi riutilizzare il tuo account su uno dei " -#~ "maggiori siti (per esempio Gmail o AOL), senza dover rivelare a noi né a " -#~ "nessuno la tua password e senza doverne scegliere una nuova." +#~ "<strong>OpenID</strong> puoi riutilizzare il tuo account su uno dei maggiori" +#~ " siti (per esempio Gmail o AOL), senza dover rivelare a noi né a nessuno la " +#~ "tua password e senza doverne scegliere una nuova." #~ msgid "Create Account" #~ msgstr "Crea account" @@ -7268,7 +8921,6 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "answer permanent link" #~ msgstr "link permanente alla risposta" -#, fuzzy #~ msgid "remove all flags" #~ msgstr "vedi tutti i tag" @@ -7278,27 +8930,14 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "Related tags" #~ msgstr "Tag" -#~ msgid "Ask a question" -#~ msgstr "Chiedi" - #~ msgid "Badges summary" #~ msgstr "Elenco medaglie" -#~ msgid "gold badge description" -#~ msgstr "" -#~ "Le medaglie d'oro sono le più pregiate. Per ottenerle, non basta " -#~ "partecipare attivamente, ma servono anche conoscenze e abilità." - #~ msgid "silver badge description" #~ msgstr "" #~ "Per ottenere le medaglie d'argento ci vuole del tempo. Se ne hai ottenuta " #~ "una, vuol dire che hai dato un grande contributo alla comunità." -#~ msgid "bronze badge description" -#~ msgstr "" -#~ "Se partecipi regolarmente a questa comunità, verrai sicuramente premiato " -#~ "con delle medaglie di bronzo." - #~ msgid "" #~ "is a Q&A site, not a discussion group. Therefore - please avoid having " #~ "discussions in your answers, comment facility allows some space for brief " @@ -7310,14 +8949,8 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "Rep system summary" #~ msgstr "" -#~ "Quando qualcuno vota a favore di una tua domanda o risposta, guadagni " -#~ "alcuni punti reputazione. I punti reputazione misurano il grado di " -#~ "fiducia della comunità nei tuoi confronti.\n" -#~ "Ti verranno assegnati gradualmente poteri di moderazione sul sito in base " -#~ "alla tua reputazione." - -#~ msgid "use tags" -#~ msgstr "usare i tag" +#~ "Quando qualcuno vota a favore di una tua domanda o risposta, guadagni alcuni punti reputazione. I punti reputazione misurano il grado di fiducia della comunità nei tuoi confronti.\n" +#~ "Ti verranno assegnati gradualmente poteri di moderazione sul sito in base alla tua reputazione." #~ msgid "what is gravatar" #~ msgstr "" @@ -7326,38 +8959,35 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "gravatar faq info" #~ msgstr "" #~ "<p>L'immagine che appare nel tuo profilo utente è " -#~ "chiamata<strong>gravatar</strong> (che vuol dire <strong>g</" -#~ "strong>lobally <strong>r</strong>ecognized <strong>avatar</strong>).</" -#~ "p><p>Ecco come funziona: viene calcolata una <strong>firma digitale</" -#~ "strong> a partire dal tuo indirizzo e-mail. Puoi caricare una tua foto, o " -#~ "il tuo alter ego preferito, sul sito <a href='http://gravatar." -#~ "com'><strong>gravatar.com</strong></a>, da cui la tua immagine viene " -#~ "recuperata utilizzando la firma digitale.</p><p>In questo modo tutti i " -#~ "siti di cui ti fidi possono mostrare la tua immagine vicino ai tuoi post, " -#~ "mentre il tuo indirizzo e-mail rimane segreto.</p><p><strong>Personalizza " -#~ "il tuo account</strong> con un'immagine registrandoti su <a href='http://" -#~ "gravatar.com'><strong>gravatar.com</strong></a> (ricordati di usare lo " -#~ "stesso indirizzo e-mail che hai usato per registrarti su questo sito). " -#~ "L'immagine predefinita è generata automaticamente e contiene un motivo " -#~ "geometrico che ricorda un po' una piastrella.</p>" - -#, fuzzy +#~ "chiamata<strong>gravatar</strong> (che vuol dire <strong>g</strong>lobally " +#~ "<strong>r</strong>ecognized <strong>avatar</strong>).</p><p>Ecco come " +#~ "funziona: viene calcolata una <strong>firma digitale</strong> a partire dal " +#~ "tuo indirizzo e-mail. Puoi caricare una tua foto, o il tuo alter ego " +#~ "preferito, sul sito <a " +#~ "href='http://gravatar.com'><strong>gravatar.com</strong></a>, da cui la tua " +#~ "immagine viene recuperata utilizzando la firma digitale.</p><p>In questo " +#~ "modo tutti i siti di cui ti fidi possono mostrare la tua immagine vicino ai " +#~ "tuoi post, mentre il tuo indirizzo e-mail rimane " +#~ "segreto.</p><p><strong>Personalizza il tuo account</strong> con un'immagine " +#~ "registrandoti su <a " +#~ "href='http://gravatar.com'><strong>gravatar.com</strong></a> (ricordati di " +#~ "usare lo stesso indirizzo e-mail che hai usato per registrarti su questo " +#~ "sito). L'immagine predefinita è generata automaticamente e contiene un " +#~ "motivo geometrico che ricorda un po' una piastrella.</p>" + #~ msgid "i like this question (click again to cancel)" #~ msgstr "Mi piace questo messaggio (clicca una seconda volta per annullare)" #~ msgid "i like this answer (click again to cancel)" #~ msgstr "Mi piace questa risposta (clicca una seconda volta per annullare)" -#, fuzzy #~ msgid "i dont like this question (click again to cancel)" #~ msgstr "" #~ "Non mi piace questo messaggio (clicca una seconda volta per annullare)" #~ msgid "i dont like this answer (click again to cancel)" -#~ msgstr "" -#~ "Non mi piace questa risposta (clicca una seconda volta per annullare)" +#~ msgstr "Non mi piace questa risposta (clicca una seconda volta per annullare)" -#, fuzzy #~ msgid "see <strong>%(counter)s</strong> more comment" #~ msgid_plural "" #~ "see <strong>%(counter)s</strong> more comments\n" @@ -7386,27 +9016,27 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "you can answer anonymously and then login" #~ msgstr "" #~ "<span class='strong big'>Comincia pure a rispondere </span> - la tua " -#~ "risposta verrà memorizzata e pubblicata non appena accederai o " -#~ "registrerai un nuovo account. Cerca di dare una <strong>vera risposta</" -#~ "strong>, per eventuali discussioni <strong>utilizza i commenti</strong> e " +#~ "risposta verrà memorizzata e pubblicata non appena accederai o registrerai " +#~ "un nuovo account. Cerca di dare una <strong>vera risposta</strong>, per " +#~ "eventuali discussioni <strong>utilizza i commenti</strong> e " #~ "<strong>ricordati di votare</strong> (non appena hai fatto il login)!" #~ msgid "answer your own question only to give an answer" #~ msgstr "" -#~ "<span class='big strong'>Rispondi pure alla tua domanda</span>, ma cerca " -#~ "di dare una <strong>vera risposta</strong>. Puoi sempre " -#~ "<strong>modificare la tua domanda</strong>. <strong>Usa i commenti per " -#~ "discutere</strong> e <strong>ricordati di votare :)</strong> per le " -#~ "risposte migliori (e per quelle peggiori!)" +#~ "<span class='big strong'>Rispondi pure alla tua domanda</span>, ma cerca di " +#~ "dare una <strong>vera risposta</strong>. Puoi sempre <strong>modificare la " +#~ "tua domanda</strong>. <strong>Usa i commenti per discutere</strong> e " +#~ "<strong>ricordati di votare :)</strong> per le risposte migliori (e per " +#~ "quelle peggiori!)" #~ msgid "please only give an answer, no discussions" #~ msgstr "" #~ "<span class='big strong'>Cerca di dare una vera risposta</span>. Se vuoi " #~ "solo aggiungere un commento a una domanda/risposta, <strong>usa i " #~ "commenti</strong>. Ricorda che puoi <strong>modificare una vecchia " -#~ "risposta</strong> invece di scriverne una nuova. Inoltre, " -#~ "<strong>ricordati di votare</strong> — ci permette di individuare " -#~ "facilmente le domande e risposte migliori!" +#~ "risposta</strong> invece di scriverne una nuova. Inoltre, <strong>ricordati " +#~ "di votare</strong> — ci permette di individuare facilmente le domande " +#~ "e risposte migliori!" #~ msgid "Login/Signup to Post Your Answer" #~ msgstr "Accedi/registrati per scrivere la tua risposta" @@ -7425,7 +9055,6 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ "<strong>Segnalami</strong> nuove risposte o aggiornamenti via e-mail ogni " #~ "giorno" -#, fuzzy #~ msgid "Notify me immediately when there are any new answers" #~ msgstr "" #~ "<strong>Segnalami</strong> nuove risposte o aggiornamenti via e-mail ogni " @@ -7434,24 +9063,22 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "" #~ "You can always adjust frequency of email updates from your %(profile_url)s" #~ msgstr "" -#~ "(nota: puoi <strong><a href='%(profile_url)s?" -#~ "sort=email_subscriptions'>modificare</a></strong> la frequenza con cui " -#~ "ricevi gli aggiornamenti)" +#~ "(nota: puoi <strong><a " +#~ "href='%(profile_url)s?sort=email_subscriptions'>modificare</a></strong> la " +#~ "frequenza con cui ricevi gli aggiornamenti)" #~ msgid "email subscription settings info" #~ msgstr "" -#~ "<span class='big strong'>Modifica la frequenza delle e-mail di notifica</" -#~ "span> Ricevi aggiornamenti via e-mail sulle domande che ti interessano, e " -#~ "<strong><br/>aiuta la comunità</strong> rispondendo alle domande degli " -#~ "altri. Se non vuoi ricevere e-mail, seleziona 'mai' qui sotto.<br/>Le e-" -#~ "mail di aggiornamento vengono spedite solo quando ci sono nuove attività." +#~ "<span class='big strong'>Modifica la frequenza delle e-mail di " +#~ "notifica</span> Ricevi aggiornamenti via e-mail sulle domande che ti " +#~ "interessano, e <strong><br/>aiuta la comunità</strong> rispondendo alle " +#~ "domande degli altri. Se non vuoi ricevere e-mail, seleziona 'mai' qui " +#~ "sotto.<br/>Le e-mail di aggiornamento vengono spedite solo quando ci sono " +#~ "nuove attività." #~ msgid "Stop sending email" #~ msgstr "Non spedire più nessuna e-mail" -#~ msgid "user website" -#~ msgstr "sito personale" - #~ msgid "<span class=\"count\">%(counter)s</span> Answer" #~ msgid_plural "<span class=\"count\">%(counter)s</span> Answers" #~ msgstr[0] "<span class=\"count\">%(counter)s</span> Risposta" @@ -7475,18 +9102,6 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "ask a question" #~ msgstr "chiedi" -#~ msgid "" -#~ "must have valid %(email)s to post, \n" -#~ " see %(email_validation_faq_url)s\n" -#~ " " -#~ msgstr "" -#~ "<span class='strong big'>Il tuo indirizzo e-mail %(email)s non è stato " -#~ "ancora verificato</span> Prima di pubblicare messaggi devi verificare il " -#~ "tuo indirizzo; maggiori dettagli <a " -#~ "href='%(email_validation_faq_url)s'>qui</a>.<br>Puoi porre la tua domanda " -#~ "ora e verificare la tua e-mail in un secondo momento; la tua domanda nel " -#~ "frattempo rimarrà in attesa." - #~ msgid "Login/signup to post your question" #~ msgstr "Accedi/Registrati per porre una domanda" @@ -7505,9 +9120,6 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "no items in counter" #~ msgstr "no" -#~ msgid "your email address" -#~ msgstr "la tua e-mail <i>(resterà privata)</i>" - #~ msgid "choose password" #~ msgstr "Password" @@ -7531,7 +9143,6 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "Question: \"%(title)s\"" #~ msgstr "Domanda: \"%(title)s\"" -#, fuzzy #~ msgid "(please enter a valid email)" #~ msgstr "inserisci un indirizzo e-mail valido" @@ -7543,13 +9154,12 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ "Non mi piace questo messaggio (clicca una seconda volta per annullare)" #~ msgid "" -#~ "The question has been closed for the following reason \"%(close_reason)s" -#~ "\" by" +#~ "The question has been closed for the following reason \"%(close_reason)s\" " +#~ "by" #~ msgstr "" -#~ "Questa domanda è stata chiusa per il seguente motivo: \"%(close_reason)s" -#~ "\" da" +#~ "Questa domanda è stata chiusa per il seguente motivo: \"%(close_reason)s\" " +#~ "da" -#, fuzzy #~ msgid "" #~ "\n" #~ " %(counter)s Answer:\n" @@ -7570,34 +9180,24 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ "segna questa risposta tra le preferite (clicca una seconda volta per " #~ "annullare)" -#, fuzzy #~ msgid "Question tags" #~ msgstr "Domande" -#~ msgid "search" -#~ msgstr "cerca" - #~ msgid "rss feed" #~ msgstr "feed RSS" -#, fuzzy #~ msgid "Please star (bookmark) some questions or follow some users." #~ msgstr "Aggiungi qualche domanda alla tua lista di domande preferite" #~ msgid "In:" #~ msgstr "In:" -#~ msgid "Email (not shared with anyone):" -#~ msgstr "Email (non condivisa con altri):" - #~ msgid "Keys to connect the site with external services like Facebook, etc." -#~ msgstr "" -#~ "Chiavi per connettere il sito con servizi esterni come Facebook, ecc." +#~ msgstr "Chiavi per connettere il sito con servizi esterni come Facebook, ecc." #~ msgid "Minimum reputation required to perform actions" #~ msgstr "Reputazione minima per eseguire operazioni" -#, fuzzy #~ msgid "Site modes" #~ msgstr "Siti" @@ -7610,9 +9210,6 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "Limits applicable to votes and moderation flags" #~ msgstr "Limiti riguardanti i voti e i post segnati come inappropriati" -#~ msgid "Setting groups" -#~ msgstr "Gruppi di impostazioni" - #~ msgid "" #~ "This option currently defines default frequency of emailed updates in the " #~ "following five categories: questions asked by user, answered by user, " @@ -7622,8 +9219,8 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ "Questa opzione attualmente definisce la frequenza di default degli update " #~ "via email nelle seguenti cinque categorie: domande poste dall'utente, " #~ "risposte dell'utente, domande selezionate individualmente, tutto il forum " -#~ "(con filtri ai tag applicati individualmente), post che menzionano " -#~ "l'utente e risposte ai commenti " +#~ "(con filtri ai tag applicati individualmente), post che menzionano l'utente " +#~ "e risposte ai commenti " #~ msgid "community wiki" #~ msgstr "domanda comunitaria" @@ -7653,8 +9250,8 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgstr "Askbot" #~ msgid "" -#~ "If you change this url from the default - then you will also probably " -#~ "want to adjust translation of the following string: " +#~ "If you change this url from the default - then you will also probably want " +#~ "to adjust translation of the following string: " #~ msgstr "" #~ "Se cambi l'impostazione di questo url, allora probabilmente vorrai anche " #~ "modificare la traduzione del testo seguente:" @@ -7668,9 +9265,6 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ "nel foglio di stile. Questo fa in modo che gli utenti non visualizzino " #~ "immagini vecchie provenienti dalla cache del loro browser." -#~ msgid "allow only selected tags" -#~ msgstr "consenti solo i tag selezionati" - #~ msgid "First time here? Check out the <a href=\"%s\">FAQ</a>!" #~ msgstr "Prima volta quì? Controlla le <a href=\"%s\">FAQ</a>!" @@ -7680,7 +9274,6 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "newanswer/" #~ msgstr "nuovarisposta/" -#, fuzzy #~ msgid "MyOpenid user name" #~ msgstr "per nome" @@ -7887,11 +9480,10 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgstr "" #~ "<span class='strong big'>Looks like your email address, %(email)s has not " #~ "yet been validated.</span> To post messages you must verify your email, " -#~ "please see <a href='%(email_validation_faq_url)s'>more details here</a>." -#~ "<br>You can submit your question now and validate email after that. Your " -#~ "question will saved as pending meanwhile. " +#~ "please see <a href='%(email_validation_faq_url)s'>more details " +#~ "here</a>.<br>You can submit your question now and validate email after that." +#~ " Your question will saved as pending meanwhile. " -#, fuzzy #~ msgid "%(type)s" #~ msgstr "il %(date)s" @@ -7899,22 +9491,21 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgstr "Come faccio a verificare il mio indirizzo e-mail?" #~ msgid "" -#~ "how to validate email info with %(send_email_key_url)s %(gravatar_faq_url)" -#~ "s" +#~ "how to validate email info with %(send_email_key_url)s %(gravatar_faq_url)s" #~ msgstr "" -#~ "<form style='margin:0;padding:0;' action='%(send_email_key_url)" -#~ "s'><p><span class=\"bigger strong\">Come?</span> Se hai appena inserito o " -#~ "cambiato il tuo indirizzo e-mail, riceverai un messaggio di posta " -#~ "contenente un collegamento. Devi semplicemente <strong>cliccare sul link " -#~ "contenuto nel messaggio</strong>.<br>Esso contiene un codice personale di " -#~ "verifica. Puoi <button style='display:inline' " -#~ "type='submit'><strong>richiedere un nuovo codice</strong></button>.</p></" -#~ "form><span class=\"bigger strong\">Perché?</span> Verificare il tuo " -#~ "indirizzo serve a <strong>verificare la tua identità</strong> e a " -#~ "<strong>ridurre lo spam</strong> .<br>Puoi scegliere di <strong>ricevere " -#~ "messaggi di notifica</strong> riguardo alle domande che più ti " -#~ "interessano. Inoltre, quando ti registri per la prima volta, viene creata " -#~ "un'<a href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>immagine " +#~ "<form style='margin:0;padding:0;' action='%(send_email_key_url)s'><p><span " +#~ "class=\"bigger strong\">Come?</span> Se hai appena inserito o cambiato il " +#~ "tuo indirizzo e-mail, riceverai un messaggio di posta contenente un " +#~ "collegamento. Devi semplicemente <strong>cliccare sul link contenuto nel " +#~ "messaggio</strong>.<br>Esso contiene un codice personale di verifica. Puoi " +#~ "<button style='display:inline' type='submit'><strong>richiedere un nuovo " +#~ "codice</strong></button>.</p></form><span class=\"bigger " +#~ "strong\">Perché?</span> Verificare il tuo indirizzo serve a " +#~ "<strong>verificare la tua identità</strong> e a <strong>ridurre lo " +#~ "spam</strong> .<br>Puoi scegliere di <strong>ricevere messaggi di " +#~ "notifica</strong> riguardo alle domande che più ti interessano. Inoltre, " +#~ "quando ti registri per la prima volta, viene creata un'<a " +#~ "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>immagine " #~ "personale</p> basata sul tuo indirizzo." #~ msgid "." @@ -7927,11 +9518,11 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgstr "Corpo del messaggio" #~ msgid "" -#~ "As a registered user you can login with your OpenID, log out of the site " -#~ "or permanently remove your account." +#~ "As a registered user you can login with your OpenID, log out of the site or " +#~ "permanently remove your account." #~ msgstr "" -#~ "Cliccando su <strong>Logout</strong> effettuerai il logout da questo " -#~ "forum ma non dal tuo provider OpenID.</p><p>Se vuoi assicurarti di essere " +#~ "Cliccando su <strong>Logout</strong> effettuerai il logout da questo forum " +#~ "ma non dal tuo provider OpenID.</p><p>Se vuoi assicurarti di essere " #~ "completamente anonimo, esegui il logout anche sul sito del tuo provider " #~ "OpenID." @@ -7942,8 +9533,7 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgstr "" #~ "Aggiungi alle domande preferite (clicca una seconda volta per annullare)" -#~ msgid "" -#~ "remove favorite mark from this question (click again to restore mark)" +#~ msgid "remove favorite mark from this question (click again to restore mark)" #~ msgstr "" #~ "Togli dalla lista delle domande preferite (clicca di nuovo per " #~ "riaggiungerla)" @@ -7951,22 +9541,6 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "see questions tagged '%(tag_name)s'" #~ msgstr "Vedi le domande con tag '%(tag_name)s'" -#, fuzzy -#~ msgid "" -#~ "\n" -#~ " %(q_num)s question\n" -#~ " " -#~ msgid_plural "" -#~ "\n" -#~ " %(q_num)s questions\n" -#~ " " -#~ msgstr[0] "" -#~ "\n" -#~ "%(q_num)s domanda trovata" -#~ msgstr[1] "" -#~ "\n" -#~ "%(q_num)s domande trovate" - #~ msgid "remove '%(tag_name)s' from the list of interesting tags" #~ msgstr "rimuovi '%(tag_name)s' dalla tua lista di tag preferiti" @@ -7974,15 +9548,14 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgstr "rimuovi '%(tag_name)s' dalla tua lista di tag ignorati" #~ msgid "" -#~ "All tags matching '<span class=\"darkred\"><strong>%(stag)s</strong></" -#~ "span>'" +#~ "All tags matching '<span class=\"darkred\"><strong>%(stag)s</strong></span>'" #~ msgstr "" -#~ "Tutti i tag contenenti '<span class=\"darkred\"><strong>%(stag)s</" -#~ "strong></span>'" +#~ "Tutti i tag contenenti '<span " +#~ "class=\"darkred\"><strong>%(stag)s</strong></span>'" #~ msgid "" -#~ "see other questions with %(view_user)s's contributions tagged '%(tag_name)" -#~ "s' " +#~ "see other questions with %(view_user)s's contributions tagged '%(tag_name)s'" +#~ " " #~ msgstr "" #~ "vedi altre domande con il tag '%(tag_name)s' a cui %(view_user)s ha " #~ "contribuito" @@ -7990,7 +9563,6 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "favorites" #~ msgstr "preferite" -#, fuzzy #~ msgid "this questions was selected as favorite %(cnt)s time" #~ msgid_plural "this questions was selected as favorite %(cnt)s times" #~ msgstr[0] "questa domanda è stata aggiunta alle preferite" @@ -8110,9 +9682,6 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ "\n" #~ "consultazioni" -#~ msgid "views" -#~ msgstr "consultazioni" - #~ msgid "reputation points" #~ msgstr "punti reputazione" @@ -8122,17 +9691,12 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "badges: " #~ msgstr "medaglie:" -#, fuzzy #~ msgid "Bad request" #~ msgstr "Richiesta non valida" #~ msgid "comments/" #~ msgstr "commenti/" -#~ msgid "delete/" -#~ msgstr "cancella/" - -#, fuzzy #~ msgid "Optional components" #~ msgstr "punti reputazione" @@ -8141,8 +9705,8 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "can't have two logins to the same account yet, sorry." #~ msgstr "" -#~ "mi spiace, non è ancora possibile collegarsi simultaneamente da due " -#~ "computer diversi con lo stesso account." +#~ "mi spiace, non è ancora possibile collegarsi simultaneamente da due computer" +#~ " diversi con lo stesso account." #~ msgid "Please enter valid username and password (both are case-sensitive)." #~ msgstr "" @@ -8159,8 +9723,8 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ "Please enter a valid username and password. Note that " #~ "both fields are case-sensitive." #~ msgstr "" -#~ "Per favore inserisci una coppia username-password valida. Entrambi i " -#~ "campi sono case-sensitive." +#~ "Per favore inserisci una coppia username-password valida. Entrambi i campi " +#~ "sono case-sensitive." #~ msgid "sendpw/" #~ msgstr "inviapassword/" @@ -8177,15 +9741,9 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "validate/" #~ msgstr "convalida/" -#~ msgid "change/" -#~ msgstr "cambia/" - #~ msgid "sendkey/" #~ msgstr "inviachiave/" -#~ msgid "verify/" -#~ msgstr "verifica/" - #~ msgid "openid/" #~ msgstr "openid/" @@ -8198,13 +9756,6 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "Password changed." #~ msgstr "Password modificata." -#, fuzzy -#~ msgid "Please enter a valid email address" -#~ msgstr "inserisci un indirizzo e-mail valido" - -#~ msgid "your email was not changed" -#~ msgstr "la tua email non è stata modificata" - #~ msgid "No OpenID %s found associated in our database" #~ msgstr "Nessun OpenID %s associato trovato nel database" @@ -8233,8 +9784,8 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ "Could not change password. Confirmation key '%s' is not " #~ "registered." #~ msgstr "" -#~ "Non è stato possibile modificare la password. La chiave di conferma '%s' " -#~ "non è registrata." +#~ "Non è stato possibile modificare la password. La chiave di conferma '%s' non" +#~ " è registrata." #~ msgid "" #~ "Can not change password. User don't exist anymore in our " @@ -8255,9 +9806,6 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "Give your account a new password." #~ msgstr "Scegli una nuova password" -#~ msgid "Change email " -#~ msgstr "Cambia la tua e-mail" - #~ msgid "Add or update the email address associated with your account." #~ msgstr "Imposta o modifica il tuo l'indirizzo e-mail" @@ -8279,15 +9827,9 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "[author]" #~ msgstr "[autore]" -#~ msgid "[publisher]" -#~ msgstr "[editore]" - #~ msgid "[publication date]" #~ msgstr "[data di pubblicazione]" -#~ msgid "[price]" -#~ msgstr "[prezzo]" - #~ msgid "currency unit" #~ msgstr "valuta" @@ -8318,9 +9860,6 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "this question was selected as favorite" #~ msgstr "questa domanda è stata scelta come preferita" -#~ msgid "number of times" -#~ msgstr "volte" - #~ msgid "the answer has been accepted to be correct" #~ msgstr "la domanda è stata accettata" @@ -8329,20 +9868,13 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "" #~ "\n" -#~ "<p>%(update_author_name)s left a <a href=\"%(post_url)s\">new comment</" -#~ "a>\n" +#~ "<p>%(update_author_name)s left a <a href=\"%(post_url)s\">new comment</a>\n" #~ " for an answer to question \"%(origin_post_title)s\"</p>\n" #~ msgstr "" #~ "\n" -#~ "<p>%(update_author_name)s ha lasciato un <a href=\"%(post_url)s\">nuovo " -#~ "commento</a>\n" +#~ "<p>%(update_author_name)s ha lasciato un <a href=\"%(post_url)s\">nuovo commento</a>\n" #~ "a una risposta alla domanda \"%(origin_post_title)s\"</p>\n" -#~ msgid "%(rev_count)s revision" -#~ msgid_plural "%(rev_count)s revisions" -#~ msgstr[0] "%(rev_count)s revisione" -#~ msgstr[1] "%(rev_count)s revisioni" - #~ msgid "tags help us keep Questions organized" #~ msgstr "i tag ci aiutano a organizzare le domande" @@ -8374,8 +9906,7 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "Please correct errors below:" #~ msgstr "Per favore correggi i seguenti errori:" -#~ msgid "" -#~ "This is where you can change your password. Make sure you remember it!" +#~ msgid "This is where you can change your password. Make sure you remember it!" #~ msgstr "Qui puoi <strong>cambiare la tua password</strong>" #~ msgid "Connect your OpenID with this site" @@ -8404,8 +9935,7 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ "stesso nome utente." #~ msgid "Check confirm box, if you want delete your account." -#~ msgstr "" -#~ "Spunta la casella di conferma, se desideri cancellare il tuo account." +#~ msgstr "Spunta la casella di conferma, se desideri cancellare il tuo account." #~ msgid "I am sure I want to delete my account." #~ msgstr "Sì, voglio davvero cancellare il mio account" @@ -8437,9 +9967,9 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ "<span class='big strong'>Hai dimenticato la tua password? Nessun problema " #~ "— richiedine una nuova!</span><br/>Basta seguire queste semplici " #~ "istruzioni:<br/>• indica il tuo nome utente qui sotto e controlla la " -#~ "tua e-mail<br/>• <strong>clicca sul link di attivazione</strong> " -#~ "della nuova password che ti verrà spedito via e-mail e collegati con la " -#~ "password indicata<br/>• cambia la tua password" +#~ "tua e-mail<br/>• <strong>clicca sul link di attivazione</strong> della " +#~ "nuova password che ti verrà spedito via e-mail e collegati con la password " +#~ "indicata<br/>• cambia la tua password" #~ msgid "Reset password" #~ msgstr "Spediscimi una nuova password" @@ -8451,8 +9981,7 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ "Someone has requested to reset your password on %(site_url)s.\n" #~ "If it were not you, it is safe to ignore this email." #~ msgstr "" -#~ "Qualcuno sta cercando di recuperare la tua password per il sito " -#~ "%(site_url)s.\n" +#~ "Qualcuno sta cercando di recuperare la tua password per il sito %(site_url)s.\n" #~ "Se non si tratta di te, puoi ignorare questo messaggio." #~ msgid "" @@ -8464,22 +9993,11 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ "* accedi al sito con nume utente %(username)s e password %(password)s\n" #~ "* vai sul tuo profilo utente e modifica la tua password" -# msgid "Click to sign in through any of these services." -# msgstr "" -# "<p><span class=\"big strong\">Please select your favorite login method -# below." -# "</span></p><p><font color=\"gray\">External login services use <a href=" -# "\"http://openid.net\"><b>OpenID</b></a> technology, where your password " -# "always stays confidential between you and your login provider and you don't -# " -# "have to remember another one. " -# "Askbot option requires your login name and " -# "password entered here.</font></p>" #~ msgid "Enter your <span id=\"enter_your_what\">Provider user name</span>" #~ msgstr "" -#~ "<span class=\"big strong\">Inserisci il tuo </span><span id=" -#~ "\"enter_your_what\" class='big strong'>nome utente sul sito selezionato</" -#~ "span><br/><span class='grey'>(o cambia metodo di login)</span>" +#~ "<span class=\"big strong\">Inserisci il tuo </span><span " +#~ "id=\"enter_your_what\" class='big strong'>nome utente sul sito " +#~ "selezionato</span><br/><span class='grey'>(o cambia metodo di login)</span>" #~ msgid "" #~ "Enter your <a class=\"openid_logo\" href=\"http://openid.net\">OpenID</a> " @@ -8492,8 +10010,8 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "Enter your login name and password" #~ msgstr "" #~ "<span class='big strong'>Inserisci il tuo nome utente su Askbot e la tua " -#~ "password</span><br/><span class='grey'>(o seleziona il tuo provider " -#~ "OpenID dall'elenco qui sopra)</span>" +#~ "password</span><br/><span class='grey'>(o seleziona il tuo provider OpenID " +#~ "dall'elenco qui sopra)</span>" #~ msgid "Create account" #~ msgstr "Crea account" @@ -8515,11 +10033,11 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "Click to sign in through any of these services." #~ msgstr "" -#~ "<p><span class=\"big strong\">Scegli il tuo metodo di accesso preferito</" -#~ "span></p><p><font color=\"gray\">I siti esterni utilizzano la tecnologia " -#~ "<a href=\"http://openid.net\"><b>OpenID</b></a>: la tua password viene " -#~ "verificata dal tuo provider e non c'è bisogno di sceglierne una nuova</" -#~ "font></p>" +#~ "<p><span class=\"big strong\">Scegli il tuo metodo di accesso " +#~ "preferito</span></p><p><font color=\"gray\">I siti esterni utilizzano la " +#~ "tecnologia <a href=\"http://openid.net\"><b>OpenID</b></a>: la tua password " +#~ "viene verificata dal tuo provider e non c'è bisogno di sceglierne una " +#~ "nuova</font></p>" #~ msgid "" #~ "\n" @@ -8531,21 +10049,18 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ " " #~ msgstr[0] "" #~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>question without an " -#~ "accepted answer</p>" +#~ "<div class=\"questions-count\">%(q_num)s</div><p>question without an accepted answer</p>" #~ msgstr[1] "" #~ "\n" -#~ "<div class=\"questions-count\">%(q_num)s</div><p>questions without an " -#~ "accepted answer</p>" +#~ "<div class=\"questions-count\">%(q_num)s</div><p>questions without an accepted answer</p>" #~ msgid "Sorry, to close own question " #~ msgstr "" -#~ "<span class=\"strong big\">You are welcome to start submitting your " -#~ "question anonymously</span>. When you submit the post, you will be " -#~ "redirected to the login/signup page. Your question will be saved in the " -#~ "current session and will be published after you log in. Login/signup " -#~ "process is very simple. Login takes about 30 seconds, initial signup " -#~ "takes a minute or less." +#~ "<span class=\"strong big\">You are welcome to start submitting your question" +#~ " anonymously</span>. When you submit the post, you will be redirected to the" +#~ " login/signup page. Your question will be saved in the current session and " +#~ "will be published after you log in. Login/signup process is very simple. " +#~ "Login takes about 30 seconds, initial signup takes a minute or less." #~ msgid "Found by tags" #~ msgstr "Tagged questions" @@ -8558,10 +10073,10 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ "%(admin_email)s administrator" #~ msgstr "" #~ "<p>Please remember that you can always <a href='%(link)s'>adjust</a> " -#~ "frequency of the email updates or turn them off entirely.<br/>If you " -#~ "believe that this message was sent in an error, please email about it the " -#~ "forum administrator at %(email)s.</p><p>Sincerely,</p><p>Your friendly " -#~ "Q&A forum server.</p>" +#~ "frequency of the email updates or turn them off entirely.<br/>If you believe" +#~ " that this message was sent in an error, please email about it the forum " +#~ "administrator at %(email)s.</p><p>Sincerely,</p><p>Your friendly Q&A forum " +#~ "server.</p>" #~ msgid "%(q_num)s question found" #~ msgid_plural "%(q_num)s questions found" @@ -8588,8 +10103,8 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "details on sharing data with third parties" #~ msgstr "" -#~ "None of the data that is not openly shown on the forum by the choice of " -#~ "the user is shared with any third party." +#~ "None of the data that is not openly shown on the forum by the choice of the " +#~ "user is shared with any third party." #~ msgid "how privacy policies can be changed" #~ msgstr "" @@ -8603,9 +10118,6 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid "Recent awards" #~ msgstr "Recent badges" -#~ msgid "all awards" -#~ msgstr "all badges" - #~ msgid "popular tags" #~ msgstr "tags" @@ -8624,12 +10136,12 @@ msgstr "Mi spiace, ci sono dei problemi tecnici" #~ msgid_plural " have total %(q_num)s questions containing %(searchtitle)s " #~ msgstr[0] "" #~ "<div class=\"questions-count\">%(q_num)s</div><p>question with title " -#~ "containing <strong><span class=\"darkred\">%(searchtitle)s</span></" -#~ "strong></p>" +#~ "containing <strong><span " +#~ "class=\"darkred\">%(searchtitle)s</span></strong></p>" #~ msgstr[1] "" #~ "<div class=\"questions-count\">%(q_num)s</div><p>questions with title " -#~ "containing <strong><span class=\"darkred\">%(searchtitle)s</span></" -#~ "strong></p>" +#~ "containing <strong><span " +#~ "class=\"darkred\">%(searchtitle)s</span></strong></p>" #~ msgid " have total %(q_num)s unanswered questions " #~ msgid_plural " have total %(q_num)s unanswered questions " diff --git a/askbot/locale/it/LC_MESSAGES/djangojs.mo b/askbot/locale/it/LC_MESSAGES/djangojs.mo Binary files differindex 80efea00..b5207b72 100644 --- a/askbot/locale/it/LC_MESSAGES/djangojs.mo +++ b/askbot/locale/it/LC_MESSAGES/djangojs.mo diff --git a/askbot/locale/it/LC_MESSAGES/djangojs.po b/askbot/locale/it/LC_MESSAGES/djangojs.po index 19f55c3a..baa86fef 100644 --- a/askbot/locale/it/LC_MESSAGES/djangojs.po +++ b/askbot/locale/it/LC_MESSAGES/djangojs.po @@ -6,9 +6,9 @@ msgid "" msgstr "" "Project-Id-Version: 0.7\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-04-18 18:52-0500\n" -"PO-Revision-Date: 2011-11-19 06:41+0100\n" -"Last-Translator: Luca Ferroni <luca@befair.it>\n" +"POT-Creation-Date: 2012-10-10 05:28-0500\n" +"PO-Revision-Date: 2012-10-03 08:21\n" +"Last-Translator: <stefano.mancini@devinterface.com>\n" "Language-Team: LANGUAGE <LL@li.org>\n" "Language: it\n" "MIME-Version: 1.0\n" @@ -16,276 +16,566 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n" "X-Generator: Translate Toolkit 1.9.0\n" +"X-Translated-Using: django-rosetta 0.6.8\n" -#: skins/common/media/jquery-openid/jquery.openid.js:73 +#: media/jquery-openid/jquery.openid.js:73 #, perl-format msgid "Are you sure you want to remove your %s login?" -msgstr "" +msgstr "Sei sicuro di che voler rimuovere il tuo login %s?" -#: skins/common/media/jquery-openid/jquery.openid.js:90 +#: media/jquery-openid/jquery.openid.js:90 msgid "Please add one or more login methods." -msgstr "" +msgstr "Si prega di aggiungere uno o più metodi di login." -#: skins/common/media/jquery-openid/jquery.openid.js:93 +#: media/jquery-openid/jquery.openid.js:93 msgid "" "You don't have a method to log in right now, please add one or more by " "clicking any of the icons below." msgstr "" +"Non hai un metodo per accedere adesso, si prega di aggiungere uno o più " +"cliccando sulle icone qui sotto." -#: skins/common/media/jquery-openid/jquery.openid.js:135 +#: media/jquery-openid/jquery.openid.js:135 msgid "passwords do not match" -msgstr "" +msgstr "le password non corrispondono" -#: skins/common/media/jquery-openid/jquery.openid.js:161 +#: media/jquery-openid/jquery.openid.js:161 msgid "Show/change current login methods" -msgstr "" +msgstr "Visualizza/Modifica i metodi di login correnti" -#: skins/common/media/jquery-openid/jquery.openid.js:226 +#: media/jquery-openid/jquery.openid.js:226 #, perl-format msgid "Please enter your %s, then proceed" -msgstr "" +msgstr "Per favore inserisci il tuo % s, quindi procedi" -#: skins/common/media/jquery-openid/jquery.openid.js:228 +#: media/jquery-openid/jquery.openid.js:228 msgid "Connect your %(provider_name)s account to %(site)s" -msgstr "" +msgstr "Collega il tuo account di %(site)s al provider %(provider_name)s" -#: skins/common/media/jquery-openid/jquery.openid.js:322 +#: media/jquery-openid/jquery.openid.js:322 #, perl-format msgid "Change your %s password" -msgstr "" +msgstr "Cambiare la password di %s" -#: skins/common/media/jquery-openid/jquery.openid.js:323 +#: media/jquery-openid/jquery.openid.js:323 msgid "Change password" -msgstr "" +msgstr "Cambia password" -#: skins/common/media/jquery-openid/jquery.openid.js:326 +#: media/jquery-openid/jquery.openid.js:326 #, perl-format msgid "Create a password for %s" -msgstr "" +msgstr "Crea una password per %s" -#: skins/common/media/jquery-openid/jquery.openid.js:327 +#: media/jquery-openid/jquery.openid.js:327 msgid "Create password" -msgstr "" +msgstr "Crea una password" -#: skins/common/media/jquery-openid/jquery.openid.js:343 +#: media/jquery-openid/jquery.openid.js:343 msgid "Create a password-protected account" -msgstr "" +msgstr "Creare un account protetto da password" + +#: media/js/group_messaging.js:102 media/js/group_messaging.js.py:288 +msgid "required" +msgstr "obbligatorio" + +#: media/js/group_messaging.js:139 +msgid "Your message:" +msgstr "Il tuo messaggio:" + +#: media/js/group_messaging.js:152 +msgid "send" +msgstr "invia" -#: skins/common/media/js/post.js:28 +#: media/js/group_messaging.js:163 media/js/post.js:2423 +#: media/js/post.js.py:3928 media/js/user.js:886 +msgid "cancel" +msgstr "annulla" + +#: media/js/group_messaging.js:226 +msgid "Reply" +msgstr "Rispondi" + +#: media/js/group_messaging.js:235 media/js/group_messaging.js.py:659 +msgid "message sent" +msgstr "messaggio inviato" + +#: media/js/group_messaging.js:269 +#, perl-brace-format +msgid "user {{str}} does not exist" +msgid_plural "users {{str}} do not exist" +msgstr[0] "gli utenti {{str}} non esistono" +msgstr[1] "l'utente {{str}} non esiste" + +#: media/js/group_messaging.js:319 +msgid "Recipient:" +msgstr "Destinatario:" + +#: media/js/live_search.js:46 +msgid "Sorry, this tag does not exist" +msgid_plural "Sorry, these tags do not exist" +msgstr[0] "Siamo spiacenti, i tag non esistono" +msgstr[1] "Siamo spiacenti, il tag non esiste" + +#: media/js/post.js:27 msgid "loading..." msgstr "Caricamento..." -#: skins/common/media/js/post.js:318 +#: media/js/post.js:99 +msgid "must be shorter than %(max_chars)s character" +msgid_plural "must be shorter than %(max_chars)s characters" +msgstr[0] "deve essere più corto di %(max_chars)s caratteri" +msgstr[1] "deve essere più corto di %(max_chars)s carattere" + +#: media/js/post.js:153 +msgid "tags cannot be empty" +msgstr "Il campo Tags non può essere vuoto" + +#: media/js/post.js:159 media/js/post.js.py:192 +msgid "content cannot be empty" +msgstr "il contenuto non può essere vuoto" + +#: media/js/post.js:162 +#, perl-format +msgid "question body must be > %s character" +msgid_plural "question body must be > %s characters" +msgstr[0] "la domanda deve essere > %s caratteri" +msgstr[1] "la domanda deve essere > %s carattere" + +#: media/js/post.js:170 +msgid "please enter title" +msgstr "Per favore inserisci il titolo" + +#: media/js/post.js:173 +#, perl-format +msgid "title must be > %s character" +msgid_plural "title must be > %s characters" +msgstr[0] "il titolo deve essere > %s caratteri" +msgstr[1] "il titolo deve essere > %s carattere" + +#: media/js/post.js:195 +#, perl-format +msgid "answer must be > %s character" +msgid_plural "answer must be > %s characters" +msgstr[0] "la risposta deve essere > %s caratteri" +msgstr[1] "la risposta deve essere > %s carattere" + +#: media/js/post.js:252 +msgid "Back to the question" +msgstr "Torna alla domanda" + +#: media/js/post.js:302 +msgid "draft saved..." +msgstr "bozza salvata..." + +#: media/js/post.js:547 msgid "insufficient privilege" msgstr "privilegi non sufficienti" -#: skins/common/media/js/post.js:319 +#: media/js/post.js:548 msgid "cannot pick own answer as best" msgstr "" "non è possibile assegnare come miglior risposta ad una propria domanda una " "propria risposta" -#: skins/common/media/js/post.js:324 +#: media/js/post.js:553 msgid "please login" msgstr "Per favore effettua il login" -#: skins/common/media/js/post.js:326 +#: media/js/post.js:555 msgid "anonymous users cannot follow questions" -msgstr "" +msgstr "gli utenti anonimi non possono seguire le domande" -#: skins/common/media/js/post.js:327 +#: media/js/post.js:556 msgid "anonymous users cannot subscribe to questions" -msgstr "" +msgstr "gli utenti anonimi non possono sottoscrivere domande" -#: skins/common/media/js/post.js:328 +#: media/js/post.js:557 msgid "anonymous users cannot vote" msgstr "Gli utenti anonimi non possono votare " -#: skins/common/media/js/post.js:330 +#: media/js/post.js:559 msgid "please confirm offensive" msgstr "" "sei certo che questo post sia offensivo, contenga spam, pubblicità, " "osservazioni poco idonee, ecc.?" -#: skins/common/media/js/post.js:331 -#, fuzzy +#: media/js/post.js:560 msgid "please confirm removal of offensive flag" -msgstr "" -"sei certo che questo post sia offensivo, contenga spam, pubblicità, " -"osservazioni poco idonee, ecc.?" +msgstr "si prega di confermare la rimozione della bandiera offensivo" -#: skins/common/media/js/post.js:332 +#: media/js/post.js:561 msgid "anonymous users cannot flag offensive posts" msgstr "Gli utenti anonimi non possono flaggare come offensivo questo post" -#: skins/common/media/js/post.js:333 +#: media/js/post.js:562 msgid "confirm delete" msgstr "conferma la cancellazione" -#: skins/common/media/js/post.js:334 +#: media/js/post.js:563 msgid "anonymous users cannot delete/undelete" msgstr "Gli utenti anonimi non possono cancellare/annullare la cancellazione" -#: skins/common/media/js/post.js:335 +#: media/js/post.js:564 msgid "post recovered" msgstr "Post recuperato" -#: skins/common/media/js/post.js:336 +#: media/js/post.js:565 msgid "post deleted" msgstr "Post eliminato" -#: skins/common/media/js/post.js:1206 +#: media/js/post.js:1435 msgid "add comment" msgstr "OK" -#: skins/common/media/js/post.js:1209 +#: media/js/post.js:1438 msgid "save comment" -msgstr "" +msgstr "salva il commento" -#: skins/common/media/js/post.js:1874 +#: media/js/post.js:2122 msgid "Please enter question title (>10 characters)" msgstr "Per piacere inserisce un titolo per la tua domanda (>10 caratteri)" -#: skins/common/media/js/tag_selector.js:15 +#: media/js/post.js:2417 media/js/post.js.py:3202 media/js/post.js.py:3390 +msgid "save" +msgstr "salva" + +#: media/js/post.js:2543 +msgid "Enter the logo url or upload an image" +msgstr "Immetti l'url del logo o carica un'immagine" + +#: media/js/post.js:2569 +msgid "Do you really want to remove the image?" +msgstr "Rimuovere l'immagine?" + +#: media/js/post.js:2677 +msgid "change logo" +msgstr "cambia il logo" + +#: media/js/post.js:2678 +msgid "add logo" +msgstr "aggiungi logo" + +#: media/js/post.js:2780 +#, perl-format +msgid "" +"tag \"%s\" was already added, no need to repeat (press \"escape\" to delete)" +msgstr "" +"il tag \"%s\" è stato già aggiunto, non c'è bisogno di ripeterlo (premere " +"\"ESC\" per eliminare)" + +#: media/js/post.js:2789 +#, perl-format +msgid "a maximum of %s tag is allowed" +msgid_plural "a maximum of %s tags are allowed" +msgstr[0] "è consentito un massimo di %s tag" +msgstr[1] "è consentito un massimo di %s tag" + +#: media/js/post.js:3132 +msgid "Delete category?" +msgstr "Eliminare la categoria?" + +#: media/js/post.js:3221 +msgid "edit" +msgstr "modifica" + +#: media/js/post.js:3308 +msgid "category name cannot be empty" +msgstr "il contenuto non può essere vuoto" + +#: media/js/post.js:3343 +msgid "already exists at the current level!" +msgstr "già esiste al livello di corrente!" + +#: media/js/post.js:3379 +msgid "add category" +msgstr "aggiungi categoria" + +#: media/js/post.js:3924 +msgid "save tags" +msgstr "salva Tag" + +#: media/js/post.js:4005 media/js/post.js.py:4041 +msgid "User name:" +msgstr "Nome utente:" + +#: media/js/post.js:4027 +msgid "Group name:" +msgstr "Nome gruppo:" + +#: media/js/post.js:4054 +msgid "Shared with the following users:" +msgstr "Condividi con i seguenti utenti:" + +#: media/js/post.js:4060 +msgid "Shared with the following groups:" +msgstr "Condividi con i seguenti gruppi:" + +#: media/js/tag_moderation.js:90 +msgid "No suggested tags left" +msgstr "Nessun tag suggerito a sinistra" + +#: media/js/tag_selector.js:14 msgid "Tag \"<span></span>\" matches:" msgstr "Il tag \"<span></span>\" corrisponde a:" -#: skins/common/media/js/tag_selector.js:84 +#: media/js/tag_selector.js:84 #, perl-format msgid "and %s more, not shown..." msgstr "e altre %s non mostrate..." -#: skins/common/media/js/user.js:14 +#: media/js/user.js:16 msgid "Please select at least one item" -msgstr "" +msgstr "Si prega di selezionare almeno un elemento" -#: skins/common/media/js/user.js:58 +#: media/js/user.js:60 msgid "Delete this notification?" msgid_plural "Delete these notifications?" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "Cancella queste notifiche?" +msgstr[1] "Cancella questa notifica?" -#: skins/common/media/js/user.js:65 -#, fuzzy +#: media/js/user.js:67 msgid "Close this entry?" msgid_plural "Close these entries?" -msgstr[0] "Elimina questo commento" -msgstr[1] "Elimina questo commento" - -#: skins/common/media/js/user.js:72 -msgid "Remove all flags on this entry?" -msgid_plural "Remove all flags on these entries?" -msgstr[0] "" -msgstr[1] "" - -#: skins/common/media/js/user.js:79 -#, fuzzy -msgid "Delete this entry?" -msgid_plural "Delete these entries?" -msgstr[0] "Elimina questo commento" -msgstr[1] "Elimina questo commento" - -#: skins/common/media/js/user.js:159 +msgstr[0] "Chiudi questi elementi" +msgstr[1] "Chiudi questo elemento" + +#: media/js/user.js:75 +msgid "Remove all flags and approve this entry?" +msgid_plural "Remove all flags and approve these entries?" +msgstr[0] "Rimuovi tutti i flag e approva questi elementi?" +msgstr[1] "Rimuovi tutti i flag e approva questo elemento?" + +#: media/js/user.js:224 +msgid "Post deleted" +msgstr "Post eliminato" + +#: media/js/user.js:226 +msgid "Post approved" +msgstr "Post approvato" + +#: media/js/user.js:247 +msgid "Accept" +msgstr "Accetta" + +#: media/js/user.js:256 +msgid "Reject" +msgstr "Rifiuta" + +#: media/js/user.js:270 +msgid "add new reject reason" +msgstr "aggiungere un motivo di rifiuto" + +#: media/js/user.js:374 +msgid "Looks there are some things to fix:" +msgstr "Sembra che ci sono alcune cose da sistemare:" + +#: media/js/user.js:442 +msgid "Please provide description." +msgstr "Si prega di fornire una descrizione." + +#: media/js/user.js:445 +msgid "Please provide details." +msgstr "Si prega di fornire dettagli." + +#: media/js/user.js:559 +msgid "A reason must be selected to delete one." +msgstr "Una ragione deve essere selezionata per eliminarne uno." + +#: media/js/user.js:657 +msgid "A reason must be selected to reject post." +msgstr "Una ragione deve essere selezionata per rifiutare il post." + +#: media/js/user.js:706 msgid "Please <a href=\"%(signin_url)s\">signin</a> to follow %(username)s" msgstr "<a href=\"%(signin_url)s\">Entra</a> per seguire %(username)s" -#: skins/common/media/js/user.js:191 +#: media/js/user.js:738 #, perl-format msgid "unfollow %s" msgstr "non seguire %s" -#: skins/common/media/js/user.js:194 +#: media/js/user.js:741 #, perl-format msgid "following %s" msgstr "stai seguendo %s" -#: skins/common/media/js/user.js:200 +#: media/js/user.js:747 #, perl-format msgid "follow %s" msgstr "segui %s" -#: skins/common/media/js/utils.js:44 +#: media/js/user.js:805 +msgid "Remove" +msgstr "Rimuovi" + +#: media/js/user.js:881 +msgid "add group" +msgstr "aggiungi gruppo" + +#: media/js/user.js:961 +msgid "add" +msgstr "aggiungi" + +#: media/js/utils.js:65 +msgid "and" +msgstr "e" + +#: media/js/utils.js:71 msgid "click to close" -msgstr "" +msgstr "fare clic per chiudere" + +#: media/js/utils.js:1721 +msgid "Group %(name)s already exists. Group names are case-insensitive." +msgstr "Esiste già un gruppo %(nome)s . I nomi dei gruppi sono minuscole." + +#: media/js/utils.js:1911 +#, perl-format +msgid "see questions tagged '%s'" +msgstr "vedi domande taggate '%s'" + +#: media/js/utils.js:2777 +msgid "ago" +msgstr "fa" -#: skins/common/media/js/wmd/wmd.js:26 +#: media/js/utils.js:2778 +msgid "from now" +msgstr "da ora" + +#: media/js/utils.js:2779 +msgid "just now" +msgstr "in questo momento" + +#: media/js/utils.js:2780 +msgid "about a minute" +msgstr "circa un minuto" + +#: media/js/utils.js:2781 +#, perl-format +msgid "%d minutes" +msgstr "%d minuti" + +#: media/js/utils.js:2782 +msgid "about an hour" +msgstr "circa un'ora" + +#: media/js/utils.js:2783 +#, perl-format +msgid "%d hours" +msgstr "%d ore" + +#: media/js/utils.js:2784 +msgid "yesterday" +msgstr "ieri" + +#: media/js/utils.js:2785 +#, perl-format +msgid "%d days" +msgstr "%d giorni" + +#: media/js/utils.js:2786 +msgid "about a month" +msgstr "circa un mese" + +#: media/js/utils.js:2787 +#, perl-format +msgid "%d months" +msgstr "%d mesi" + +#: media/js/utils.js:2788 +msgid "about a year" +msgstr "circa un anno" + +#: media/js/utils.js:2789 +#, perl-format +msgid "%d years" +msgstr "%d anni" + +#: media/js/tinymce/plugins/askbot_attachment/editor_plugin.js:30 +#: media/js/tinymce/plugins/askbot_attachment/editor_plugin.js:71 +msgid "Insert a file" +msgstr "Inserisci un file" + +#: media/js/tinymce/plugins/askbot_attachment/editor_plugin.js:37 +msgid "Or paste file url here" +msgstr "O incolla l'url del file" + +#: media/js/tinymce/plugins/askbot_imageuploader/editor_plugin.js:30 +msgid "Upload an image" +msgstr "Carica un'immagine" + +#: media/js/tinymce/plugins/askbot_imageuploader/editor_plugin.js:71 +msgid "Insert image" +msgstr "Inserire immagine" + +#: media/js/wmd/wmd.js:27 msgid "bold" msgstr "grassetto" -#: skins/common/media/js/wmd/wmd.js:27 +#: media/js/wmd/wmd.js:28 msgid "italic" msgstr "corsivo" -#: skins/common/media/js/wmd/wmd.js:28 +#: media/js/wmd/wmd.js:29 msgid "link" msgstr "Link" -#: skins/common/media/js/wmd/wmd.js:29 +#: media/js/wmd/wmd.js:30 msgid "quote" msgstr "cita" -#: skins/common/media/js/wmd/wmd.js:30 +#: media/js/wmd/wmd.js:31 msgid "preformatted text" msgstr "Testo preformattato" -#: skins/common/media/js/wmd/wmd.js:31 +#: media/js/wmd/wmd.js:32 msgid "image" msgstr "Immagine" -#: skins/common/media/js/wmd/wmd.js:32 +#: media/js/wmd/wmd.js:33 msgid "attachment" -msgstr "" +msgstr "allegato" -#: skins/common/media/js/wmd/wmd.js:33 +#: media/js/wmd/wmd.js:34 msgid "numbered list" msgstr "Lista numerata" -#: skins/common/media/js/wmd/wmd.js:34 +#: media/js/wmd/wmd.js:35 msgid "bulleted list" msgstr "Lista" -#: skins/common/media/js/wmd/wmd.js:35 +#: media/js/wmd/wmd.js:36 msgid "heading" msgstr "Titolo" -#: skins/common/media/js/wmd/wmd.js:36 +#: media/js/wmd/wmd.js:37 msgid "horizontal bar" msgstr "barra orizzontale" -#: skins/common/media/js/wmd/wmd.js:37 +#: media/js/wmd/wmd.js:38 msgid "undo" msgstr "annulla" -#: skins/common/media/js/wmd/wmd.js:38 skins/common/media/js/wmd/wmd.js:1053 +#: media/js/wmd/wmd.js:39 media/js/wmd/wmd.js.py:1111 msgid "redo" msgstr "Esegui nuovamente" -#: skins/common/media/js/wmd/wmd.js:47 +#: media/js/wmd/wmd.js:48 msgid "enter image url" msgstr "" "inserisci l'URL dell'immagine, es. http://www.example.com/immagine.jpg " "\"titolo immagine\"" -#: skins/common/media/js/wmd/wmd.js:48 +#: media/js/wmd/wmd.js:49 msgid "enter url" msgstr "inserisci l'indirizzo web, e.g. <br />http://www.askbot.org/ </p>" -#: skins/common/media/js/wmd/wmd.js:49 +#: media/js/wmd/wmd.js:50 msgid "upload file attachment" -msgstr "" - -#~ msgid "tags cannot be empty" -#~ msgstr "Il campo Tags non può essere vuoto" - -#~ msgid "content cannot be empty" -#~ msgstr "il contenuto non può essere vuoto" +msgstr "caricare file allegato" #~ msgid "%s content minchars" #~ msgstr "per favore inserisci più di %s caratteri" -#~ msgid "please enter title" -#~ msgstr "Per favore inserisci il titolo" - #~ msgid "%s title minchars" #~ msgstr "per favore inserisci almeno %s caratteri" @@ -306,9 +596,6 @@ msgstr "" #~ msgid "delete" #~ msgstr "elimina" -#~ msgid "enter %s more characters" -#~ msgstr "%s caratteri rimanenti" - #~ msgid "%s characters left" #~ msgstr "%s caratteri rimanenti" diff --git a/askbot/locale/ru/LC_MESSAGES/django.mo b/askbot/locale/ru/LC_MESSAGES/django.mo Binary files differindex e4fdb063..86101285 100644 --- a/askbot/locale/ru/LC_MESSAGES/django.mo +++ b/askbot/locale/ru/LC_MESSAGES/django.mo diff --git a/askbot/management/commands/find_bodyless_questions.py b/askbot/management/commands/find_bodyless_questions.py new file mode 100644 index 00000000..75312620 --- /dev/null +++ b/askbot/management/commands/find_bodyless_questions.py @@ -0,0 +1,44 @@ +"""this management commands will fix corrupted posts +that do not have revisions by creating a fake initial revision +based on the content stored in the post itself +""" +from django.core.management.base import NoArgsCommand +from askbot import models +from askbot import const +from askbot.utils.console import ProgressBar + +def print_results(items): + template = 'id=%d, title=%s' + for thread in items: + print template % (thread.id, thread.title.encode('utf8')) + +class Command(NoArgsCommand): + """Command class for "fix_bodyless_questions" + """ + def handle(self, *arguments, **options): + """function that handles the command job + """ + threads = models.Thread.objects.all() + count = threads.count() + message = 'Looking for body-less questions' + bodyless = list() + multi_body = list() + for thread in ProgressBar(threads.iterator(), count, message): + body_count = models.Post.objects.filter( + thread=thread, + post_type='question', + ).count() + if body_count == 0: + bodyless.append(thread) + elif body_count > 1: + multi_body.append(thread) + + if len(bodyless) + len(multi_body) == 0: + print 'None found.' + else: + if len(bodyless): + print '\nQuestions without body text:' + print_results(bodyless) + if len(multi_body): + print '\nQuestions with >1 instances of body text' + print_results(multi_body) diff --git a/askbot/management/commands/init_postgresql_full_text_search.py b/askbot/management/commands/init_postgresql_full_text_search.py index cd709be0..3cf4b03c 100644 --- a/askbot/management/commands/init_postgresql_full_text_search.py +++ b/askbot/management/commands/init_postgresql_full_text_search.py @@ -14,3 +14,11 @@ class Command(NoArgsCommand): 'thread_and_post_models_01162012.plsql' ) setup_full_text_search(script_path) + + script_path = os.path.join( + askbot.get_install_directory(), + 'search', + 'postgresql', + 'user_profile_search_16102012.plsql' + ) + setup_full_text_search(script_path) diff --git a/askbot/media/style/style.css b/askbot/media/style/style.css index 3abbd362..79bc422b 100644 --- a/askbot/media/style/style.css +++ b/askbot/media/style/style.css @@ -139,6 +139,9 @@ blockquote { padding: 10px 0px 1px 10px; background-color: #F5F5F5; } +html { + overflow-y: scroll; +} /* http://pathfindersoftware.com/2007/09/developers-note-2/ */ * html .clearfix, * html .paginator { @@ -444,6 +447,7 @@ body.user-messages { #searchBar .searchInputCancelable { font-size: 26px; height: 39px; + line-height: 39px; font-weight: 300; background: #FFF; border: 0px; @@ -484,6 +488,7 @@ body.user-messages { color: #ce8888; background: #fff; height: 42px; + line-height: 42px; border: 0px; border-left: #deded0 1px solid; text-align: center; @@ -661,6 +666,7 @@ body.anon #searchBar .searchInputCancelable { padding-left: 5px; border: #c9c9b5 1px solid; height: 25px; + line-height: 25px; font-size: 14px; } .box .inputs #ab-tag-search { @@ -1434,8 +1440,8 @@ ul#related-tags li { } #askFormBar .questionTitleInput { font-size: 24px; - line-height: 24px; height: 36px; + line-height: 36px; margin: 0px; padding: 0px 0 0 5px; border: #cce6ec 3px solid; @@ -1501,6 +1507,7 @@ ul#related-tags li { .edit-answer-page #id_post_author_email { border: #cce6ec 3px solid; height: 25px; + line-height: 25px; padding-left: 5px; font-size: 14px; width: 186px; @@ -1815,6 +1822,24 @@ ul#related-tags li { .wmd-preview IMG { max-width: 600px; } +.defaultSkin table.mceLayout, +.defaultSkin table.mceLayout tr.mceFirst td { + border: none; +} +.defaultSkin table.mceLayout tr.mceLast td { + border-bottom: none; +} +.mceStatusbar { + height: 5px; + background: #fff; +} +.defaultSkin span.mce_askbot_imageuploader { + background-position: -380px 0px; +} +.defaultSkin span.mce_askbot_attachment { + background-image: url(../images/attachment.png); + background-position: 0px 0px; +} .user-page .wmd-buttons { width: 725px; } @@ -2053,16 +2078,24 @@ ul#related-tags li { } .question-page .post-controls .question-delete, .question-page .answer-controls .question-delete { - background: url(../images/delete.png) no-repeat center left; + background: url(../images/delete.png) no-repeat left 2px; padding-left: 11px; } .question-page .post-controls .question-flag, .question-page .answer-controls .question-flag { background: url(../images/flag.png) no-repeat center left; } +.question-page .post-controls .answer-publish, +.question-page .answer-controls .answer-publish { + background: url(../images/publish.png) no-repeat center left; +} +.question-page .post-controls .answer-unpublish, +.question-page .answer-controls .answer-unpublish { + background: url(../images/unpublish.png) no-repeat 2px center; +} .question-page .post-controls .question-edit, .question-page .answer-controls .question-edit { - background: url(../images/edit2.png) no-repeat center left; + background: url(../images/edit2.png) no-repeat 2px center; } .question-page .post-controls .question-retag, .question-page .answer-controls .question-retag { @@ -2607,6 +2640,7 @@ ul#related-tags li { .user-profile-page select { border: #cce6ec 3px solid; height: 25px; + line-height: 25px; padding-left: 5px; width: 395px; font-size: 14px; @@ -2886,11 +2920,10 @@ a:hover.medal { /* profile page */ .tabBar-profile { width: 100%; - margin-bottom: 15px; + margin-bottom: 5px; float: left; } .user-profile-page { - font-size: 13px; color: #525252; } .user-profile-page p { @@ -3301,7 +3334,7 @@ table.ab-subscr-form { } .errors { line-height: 20px; - color: red; + color: #990000; } .error, .openid-signin p.error { @@ -4084,6 +4117,7 @@ textarea.tipped-input { border: none; font-size: 15px; font-color: #707070; + height: 16px; line-height: 16px; margin-top: 9px; -webkit-box-shadow: none; diff --git a/askbot/media/style/style.less b/askbot/media/style/style.less index a7d035ed..9e2e2a25 100644 --- a/askbot/media/style/style.less +++ b/askbot/media/style/style.less @@ -469,6 +469,7 @@ body.user-messages { .searchInput, .searchInputCancelable{ font-size: 26px; height: 39px; + line-height: 39px; font-weight:300; background:#FFF; border:0px; @@ -515,6 +516,7 @@ body.user-messages { color: #ce8888; background:#fff; height: 42px; + line-height: 42px; border:0px; border-left:#deded0 1px solid; text-align: center; @@ -669,6 +671,7 @@ body.anon { padding-left:5px; border:#c9c9b5 1px solid; height:25px; + line-height:25px; font-size: 14px; } #ab-tag-search { @@ -1433,8 +1436,8 @@ ul#related-tags li { } .questionTitleInput { font-size: 24px; - line-height: 24px; height: 36px; + line-height: 36px; margin: 0px; padding: 0px 0 0 5px; border:#cce6ec 3px solid; @@ -1496,11 +1499,12 @@ ul#related-tags li { .edit-answer-page { #id_post_author_username, #id_post_author_email { - border:#cce6ec 3px solid; - height:25px; - padding-left:5px; - font-size:14px; - width:186px; + border: #cce6ec 3px solid; + height: 25px; + line-height: 25px; + padding-left: 5px; + font-size: 14px; + width: 186px; } #id_post_author_email { margin-left: 10px; @@ -2503,6 +2507,7 @@ ul#related-tags li { input[type="text"],input[type="password"],select{ border:#cce6ec 3px solid; height:25px; + line-height: 25px; padding-left:5px; width:395px; font-size:14px; @@ -2564,7 +2569,7 @@ ul#related-tags li { #email-input-fs,#local_login_buttons,#password-fs,#openid-fs{ margin-top:10px; #id_email,#id_username,#id_password{ - font-size: 12px; + font-size: 12px; line-height: 20px; height: 20px; margin: 0px; @@ -3974,6 +3979,7 @@ textarea.tipped-input { border: none; font-size: 15px; font-color: @info-text; + height: 16px; line-height: 16px; margin-top: 9px; -webkit-box-shadow: none;/* undo bootstrap glow */ diff --git a/askbot/migrations/0004_install_full_text_indexes_for_mysql.py b/askbot/migrations/0004_install_full_text_indexes_for_mysql.py index 7c7c52f0..e484c59b 100644 --- a/askbot/migrations/0004_install_full_text_indexes_for_mysql.py +++ b/askbot/migrations/0004_install_full_text_indexes_for_mysql.py @@ -3,11 +3,12 @@ import os import datetime from south.db import db from south.v2 import DataMigration +from django.db import connection from django.db import models -from askbot.utils import mysql Q_INDEX_NAME = 'askbot_question_full_text_index' A_INDEX_NAME = 'askbot_answer_full_text_index' +SUPPORTS_FTS = None NO_FTS_WARNING = """ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! @@ -18,6 +19,17 @@ NO_FTS_WARNING = """ !! !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! """ +def supports_full_text_search(): + global SUPPORTS_FTS + if SUPPORTS_FTS is None: + cursor = connection.cursor() + cursor.execute("SHOW CREATE TABLE question") # In migration 0004 model forum.Question used db table `question` + data = cursor.fetchone() + if 'ENGINE=MyISAM' in data[1]: + SUPPORTS_FTS = True + else: + SUPPORTS_FTS = False + return SUPPORTS_FTS def get_create_full_text_index_sql(index_name, table_name, column_list): column_sql = '(%s)' % ','.join(column_list) @@ -35,7 +47,7 @@ class Migration(DataMigration): and will probably fail otherwise """ if db.backend_name == 'mysql': - if mysql.supports_full_text_search_migr0004(): + if supports_full_text_search(): #todo: extract column names by introspection question_index_sql = get_create_full_text_index_sql( Q_INDEX_NAME, @@ -55,7 +67,7 @@ class Migration(DataMigration): def backwards(self, orm): "code for removal of full text indices in mysql" - if db.backend_name == 'mysql' and mysql.supports_full_text_search(): + if db.backend_name == 'mysql' and supports_full_text_search(): db.execute( get_drop_index_sql( Q_INDEX_NAME, diff --git a/askbot/migrations/0154_update_postgres_user_search.py b/askbot/migrations/0154_update_postgres_user_search.py new file mode 100644 index 00000000..54bb5c50 --- /dev/null +++ b/askbot/migrations/0154_update_postgres_user_search.py @@ -0,0 +1,390 @@ +# encoding: utf-8 +import askbot +import datetime +import os +from askbot.search import postgresql +from south.db import db +from south.v2 import DataMigration +from django.db import models + +class Migration(DataMigration): + + def forwards(self, orm): + "Write your forwards methods here." + db_engine_name = askbot.get_database_engine_name() + if 'postgresql_psycopg2' in db_engine_name: + script_path = os.path.join( + askbot.get_install_directory(), + 'search', + 'postgresql', + 'user_profile_search_16102012.plsql' + ) + postgresql.setup_full_text_search(script_path) + + + def backwards(self, orm): + "Write your backwards methods here." + + + models = { + 'askbot.activity': { + 'Meta': {'object_name': 'Activity', 'db_table': "u'activity'"}, + 'active_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'activity_type': ('django.db.models.fields.SmallIntegerField', [], {}), + 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'is_auditted': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), + 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['askbot.Post']", 'null': 'True'}), + 'receiving_users': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'received_activity'", 'symmetrical': 'False', 'to': "orm['auth.User']"}), + 'recipients': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'incoming_activity'", 'symmetrical': 'False', 'through': "orm['askbot.ActivityAuditStatus']", 'to': "orm['auth.User']"}), + 'summary': ('django.db.models.fields.TextField', [], {'default': "''"}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}) + }, + 'askbot.activityauditstatus': { + 'Meta': {'unique_together': "(('user', 'activity'),)", 'object_name': 'ActivityAuditStatus'}, + 'activity': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['askbot.Activity']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'status': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}) + }, + 'askbot.anonymousanswer': { + 'Meta': {'object_name': 'AnonymousAnswer'}, + 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), + 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'anonymous_answers'", 'to': "orm['askbot.Post']"}), + 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), + 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), + 'text': ('django.db.models.fields.TextField', [], {}), + 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False'}) + }, + 'askbot.anonymousquestion': { + 'Meta': {'object_name': 'AnonymousQuestion'}, + 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'ip_addr': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}), + 'is_anonymous': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'session_key': ('django.db.models.fields.CharField', [], {'max_length': '40'}), + 'summary': ('django.db.models.fields.CharField', [], {'max_length': '180'}), + 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), + 'text': ('django.db.models.fields.TextField', [], {}), + 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), + 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False'}) + }, + 'askbot.askwidget': { + 'Meta': {'object_name': 'AskWidget'}, + 'group': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['askbot.Group']", 'null': 'True', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'include_text_field': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'inner_style': ('django.db.models.fields.TextField', [], {'blank': 'True'}), + 'outer_style': ('django.db.models.fields.TextField', [], {'blank': 'True'}), + 'tag': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['askbot.Tag']", 'null': 'True', 'blank': 'True'}), + 'title': ('django.db.models.fields.CharField', [], {'max_length': '100'}) + }, + 'askbot.award': { + 'Meta': {'object_name': 'Award', 'db_table': "u'award'"}, + 'awarded_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'badge': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_badge'", 'to': "orm['askbot.BadgeData']"}), + 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'notified': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'award_user'", 'to': "orm['auth.User']"}) + }, + 'askbot.badgedata': { + 'Meta': {'ordering': "('slug',)", 'object_name': 'BadgeData'}, + 'awarded_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), + 'awarded_to': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'badges'", 'symmetrical': 'False', 'through': "orm['askbot.Award']", 'to': "orm['auth.User']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '50', 'db_index': 'True'}) + }, + 'askbot.draftanswer': { + 'Meta': {'object_name': 'DraftAnswer'}, + 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'draft_answers'", 'to': "orm['auth.User']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'text': ('django.db.models.fields.TextField', [], {'null': 'True'}), + 'thread': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'draft_answers'", 'to': "orm['askbot.Thread']"}) + }, + 'askbot.draftquestion': { + 'Meta': {'object_name': 'DraftQuestion'}, + 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125', 'null': 'True'}), + 'text': ('django.db.models.fields.TextField', [], {'null': 'True'}), + 'title': ('django.db.models.fields.CharField', [], {'max_length': '300', 'null': 'True'}) + }, + 'askbot.emailfeedsetting': { + 'Meta': {'unique_together': "(('subscriber', 'feed_type'),)", 'object_name': 'EmailFeedSetting'}, + 'added_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), + 'feed_type': ('django.db.models.fields.CharField', [], {'max_length': '16'}), + 'frequency': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '8'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'reported_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), + 'subscriber': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'notification_subscriptions'", 'to': "orm['auth.User']"}) + }, + 'askbot.favoritequestion': { + 'Meta': {'object_name': 'FavoriteQuestion', 'db_table': "u'favorite_question'"}, + 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'thread': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['askbot.Thread']"}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_favorite_questions'", 'to': "orm['auth.User']"}) + }, + 'askbot.group': { + 'Meta': {'object_name': 'Group', '_ormbases': ['auth.Group']}, + 'description': ('django.db.models.fields.related.OneToOneField', [], {'blank': 'True', 'related_name': "'described_group'", 'unique': 'True', 'null': 'True', 'to': "orm['askbot.Post']"}), + 'group_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.Group']", 'unique': 'True', 'primary_key': 'True'}), + 'is_vip': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'logo_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True'}), + 'moderate_answers_to_enquirers': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'moderate_email': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), + 'openness': ('django.db.models.fields.SmallIntegerField', [], {'default': '2'}), + 'preapproved_email_domains': ('django.db.models.fields.TextField', [], {'default': "''", 'null': 'True', 'blank': 'True'}), + 'preapproved_emails': ('django.db.models.fields.TextField', [], {'default': "''", 'null': 'True', 'blank': 'True'}) + }, + 'askbot.groupmembership': { + 'Meta': {'object_name': 'GroupMembership', '_ormbases': ['auth.AuthUserGroups']}, + 'authusergroups_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['auth.AuthUserGroups']", 'unique': 'True', 'primary_key': 'True'}), + 'level': ('django.db.models.fields.SmallIntegerField', [], {'default': '1'}) + }, + 'askbot.markedtag': { + 'Meta': {'object_name': 'MarkedTag'}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'reason': ('django.db.models.fields.CharField', [], {'max_length': '16'}), + 'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'user_selections'", 'to': "orm['askbot.Tag']"}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tag_selections'", 'to': "orm['auth.User']"}) + }, + 'askbot.post': { + 'Meta': {'object_name': 'Post'}, + 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'approved': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'db_index': 'True'}), + 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'posts'", 'to': "orm['auth.User']"}), + 'comment_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_index': 'True'}), + 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), + 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_posts'", 'null': 'True', 'to': "orm['auth.User']"}), + 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'group_posts'", 'symmetrical': 'False', 'through': "orm['askbot.PostToGroup']", 'to': "orm['askbot.Group']"}), + 'html': ('django.db.models.fields.TextField', [], {'null': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'is_anonymous': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'last_edited_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), + 'last_edited_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'last_edited_posts'", 'null': 'True', 'to': "orm['auth.User']"}), + 'locked': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'locked_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), + 'locked_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'locked_posts'", 'null': 'True', 'to': "orm['auth.User']"}), + 'offensive_flag_count': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), + 'old_answer_id': ('django.db.models.fields.PositiveIntegerField', [], {'default': 'None', 'unique': 'True', 'null': 'True', 'blank': 'True'}), + 'old_comment_id': ('django.db.models.fields.PositiveIntegerField', [], {'default': 'None', 'unique': 'True', 'null': 'True', 'blank': 'True'}), + 'old_question_id': ('django.db.models.fields.PositiveIntegerField', [], {'default': 'None', 'unique': 'True', 'null': 'True', 'blank': 'True'}), + 'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'comments'", 'null': 'True', 'to': "orm['askbot.Post']"}), + 'points': ('django.db.models.fields.IntegerField', [], {'default': '0', 'db_column': "'score'"}), + 'post_type': ('django.db.models.fields.CharField', [], {'max_length': '255', 'db_index': 'True'}), + 'summary': ('django.db.models.fields.TextField', [], {'null': 'True'}), + 'text': ('django.db.models.fields.TextField', [], {'null': 'True'}), + 'thread': ('django.db.models.fields.related.ForeignKey', [], {'default': 'None', 'related_name': "'posts'", 'null': 'True', 'blank': 'True', 'to': "orm['askbot.Thread']"}), + 'vote_down_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), + 'vote_up_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), + 'wiki': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'wikified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}) + }, + 'askbot.postflagreason': { + 'Meta': {'object_name': 'PostFlagReason'}, + 'added_at': ('django.db.models.fields.DateTimeField', [], {}), + 'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}), + 'details': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'post_reject_reasons'", 'to': "orm['askbot.Post']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'title': ('django.db.models.fields.CharField', [], {'max_length': '128'}) + }, + 'askbot.postrevision': { + 'Meta': {'ordering': "('-revision',)", 'unique_together': "(('post', 'revision'),)", 'object_name': 'PostRevision'}, + 'approved': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_index': 'True'}), + 'approved_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), + 'approved_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True', 'blank': 'True'}), + 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'postrevisions'", 'to': "orm['auth.User']"}), + 'by_email': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'email_address': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'null': 'True', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'is_anonymous': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'post': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'revisions'", 'null': 'True', 'to': "orm['askbot.Post']"}), + 'revised_at': ('django.db.models.fields.DateTimeField', [], {}), + 'revision': ('django.db.models.fields.PositiveIntegerField', [], {}), + 'summary': ('django.db.models.fields.CharField', [], {'max_length': '300', 'blank': 'True'}), + 'tagnames': ('django.db.models.fields.CharField', [], {'default': "''", 'max_length': '125', 'blank': 'True'}), + 'text': ('django.db.models.fields.TextField', [], {}), + 'title': ('django.db.models.fields.CharField', [], {'default': "''", 'max_length': '300', 'blank': 'True'}) + }, + 'askbot.posttogroup': { + 'Meta': {'unique_together': "(('post', 'group'),)", 'object_name': 'PostToGroup', 'db_table': "'askbot_post_groups'"}, + 'group': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['askbot.Group']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'post': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['askbot.Post']"}) + }, + 'askbot.questionview': { + 'Meta': {'object_name': 'QuestionView'}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'question': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'viewed'", 'to': "orm['askbot.Post']"}), + 'when': ('django.db.models.fields.DateTimeField', [], {}), + 'who': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'question_views'", 'to': "orm['auth.User']"}) + }, + 'askbot.questionwidget': { + 'Meta': {'object_name': 'QuestionWidget'}, + 'group': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['askbot.Group']", 'null': 'True', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'order_by': ('django.db.models.fields.CharField', [], {'default': "'-added_at'", 'max_length': '18'}), + 'question_number': ('django.db.models.fields.PositiveIntegerField', [], {'default': '7'}), + 'search_query': ('django.db.models.fields.CharField', [], {'default': "''", 'max_length': '50', 'null': 'True', 'blank': 'True'}), + 'style': ('django.db.models.fields.TextField', [], {'default': '"\\n@import url(\'http://fonts.googleapis.com/css?family=Yanone+Kaffeesatz:300,400,700\');\\nbody {\\n overflow: hidden;\\n}\\n\\n#container {\\n width: 200px;\\n height: 350px;\\n}\\nul {\\n list-style: none;\\n padding: 5px;\\n margin: 5px;\\n}\\nli {\\n border-bottom: #CCC 1px solid;\\n padding-bottom: 5px;\\n padding-top: 5px;\\n}\\nli:last-child {\\n border: none;\\n}\\na {\\n text-decoration: none;\\n color: #464646;\\n font-family: \'Yanone Kaffeesatz\', sans-serif;\\n font-size: 15px;\\n}\\n"', 'blank': 'True'}), + 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '50'}), + 'title': ('django.db.models.fields.CharField', [], {'max_length': '100'}) + }, + 'askbot.replyaddress': { + 'Meta': {'object_name': 'ReplyAddress'}, + 'address': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '25'}), + 'allowed_from_email': ('django.db.models.fields.EmailField', [], {'max_length': '150'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'post': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'reply_addresses'", 'null': 'True', 'to': "orm['askbot.Post']"}), + 'reply_action': ('django.db.models.fields.CharField', [], {'default': "'auto_answer_or_comment'", 'max_length': '32'}), + 'response_post': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'edit_addresses'", 'null': 'True', 'to': "orm['askbot.Post']"}), + 'used_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}) + }, + 'askbot.repute': { + 'Meta': {'object_name': 'Repute', 'db_table': "u'repute'"}, + 'comment': ('django.db.models.fields.CharField', [], {'max_length': '128', 'null': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'negative': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), + 'positive': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), + 'question': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['askbot.Post']", 'null': 'True', 'blank': 'True'}), + 'reputation': ('django.db.models.fields.IntegerField', [], {'default': '1'}), + 'reputation_type': ('django.db.models.fields.SmallIntegerField', [], {}), + 'reputed_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}) + }, + 'askbot.tag': { + 'Meta': {'ordering': "('-used_count', 'name')", 'object_name': 'Tag', 'db_table': "u'tag'"}, + 'created_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'created_tags'", 'to': "orm['auth.User']"}), + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'deleted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), + 'deleted_by': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'deleted_tags'", 'null': 'True', 'to': "orm['auth.User']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), + 'status': ('django.db.models.fields.SmallIntegerField', [], {'default': '1'}), + 'suggested_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'suggested_tags'", 'symmetrical': 'False', 'to': "orm['auth.User']"}), + 'tag_wiki': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'described_tag'", 'unique': 'True', 'null': 'True', 'to': "orm['askbot.Post']"}), + 'used_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) + }, + 'askbot.thread': { + 'Meta': {'object_name': 'Thread'}, + 'accepted_answer': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'to': "orm['askbot.Post']"}), + 'added_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'answer_accepted_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), + 'answer_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), + 'approved': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'db_index': 'True'}), + 'close_reason': ('django.db.models.fields.SmallIntegerField', [], {'null': 'True', 'blank': 'True'}), + 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'closed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), + 'closed_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True', 'blank': 'True'}), + 'favorited_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'unused_favorite_threads'", 'symmetrical': 'False', 'through': "orm['askbot.FavoriteQuestion']", 'to': "orm['auth.User']"}), + 'favourite_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}), + 'followed_by': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'followed_threads'", 'symmetrical': 'False', 'to': "orm['auth.User']"}), + 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'group_threads'", 'symmetrical': 'False', 'through': "orm['askbot.ThreadToGroup']", 'to': "orm['askbot.Group']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'last_activity_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'last_activity_by': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'unused_last_active_in_threads'", 'to': "orm['auth.User']"}), + 'points': ('django.db.models.fields.IntegerField', [], {'default': '0', 'db_column': "'score'"}), + 'tagnames': ('django.db.models.fields.CharField', [], {'max_length': '125'}), + 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'threads'", 'symmetrical': 'False', 'to': "orm['askbot.Tag']"}), + 'title': ('django.db.models.fields.CharField', [], {'max_length': '300'}), + 'view_count': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}) + }, + 'askbot.threadtogroup': { + 'Meta': {'unique_together': "(('thread', 'group'),)", 'object_name': 'ThreadToGroup', 'db_table': "'askbot_thread_groups'"}, + 'group': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['askbot.Group']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'thread': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['askbot.Thread']"}), + 'visibility': ('django.db.models.fields.SmallIntegerField', [], {'default': '1'}) + }, + 'askbot.vote': { + 'Meta': {'unique_together': "(('user', 'voted_post'),)", 'object_name': 'Vote', 'db_table': "u'vote'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['auth.User']"}), + 'vote': ('django.db.models.fields.SmallIntegerField', [], {}), + 'voted_at': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'voted_post': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'votes'", 'to': "orm['askbot.Post']"}) + }, + 'auth.authusergroups': { + 'Meta': {'unique_together': "(('group', 'user'),)", 'object_name': 'AuthUserGroups', 'db_table': "'auth_user_groups'", 'managed': 'False'}, + 'group': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.Group']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}) + }, + 'auth.group': { + 'Meta': {'object_name': 'Group'}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), + 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) + }, + 'auth.permission': { + 'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, + 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) + }, + 'auth.user': { + 'Meta': {'object_name': 'User'}, + 'about': ('django.db.models.fields.TextField', [], {'blank': 'True'}), + 'avatar_type': ('django.db.models.fields.CharField', [], {'default': "'n'", 'max_length': '1'}), + 'bronze': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), + 'consecutive_days_visit_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), + 'country': ('django_countries.fields.CountryField', [], {'max_length': '2', 'blank': 'True'}), + 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'date_of_birth': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), + 'display_tag_filter_strategy': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), + 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), + 'email_isvalid': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'email_key': ('django.db.models.fields.CharField', [], {'max_length': '32', 'null': 'True'}), + 'email_signature': ('django.db.models.fields.TextField', [], {'blank': 'True'}), + 'email_tag_filter_strategy': ('django.db.models.fields.SmallIntegerField', [], {'default': '1'}), + 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), + 'gold': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), + 'gravatar': ('django.db.models.fields.CharField', [], {'max_length': '32'}), + 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'ignored_tags': ('django.db.models.fields.TextField', [], {'blank': 'True'}), + 'interesting_tags': ('django.db.models.fields.TextField', [], {'blank': 'True'}), + 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), + 'is_fake': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), + 'last_seen': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), + 'location': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), + 'new_response_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), + 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), + 'questions_per_page': ('django.db.models.fields.SmallIntegerField', [], {'default': '10'}), + 'real_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}), + 'reputation': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'}), + 'seen_response_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}), + 'show_country': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'show_marked_tags': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), + 'silver': ('django.db.models.fields.SmallIntegerField', [], {'default': '0'}), + 'status': ('django.db.models.fields.CharField', [], {'default': "'w'", 'max_length': '2'}), + 'subscribed_tags': ('django.db.models.fields.TextField', [], {'blank': 'True'}), + 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), + 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), + 'website': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}) + }, + 'contenttypes.contenttype': { + 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, + 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) + } + } + + complete_apps = ['askbot'] diff --git a/askbot/models/__init__.py b/askbot/models/__init__.py index 5b9f8336..f86005ee 100644 --- a/askbot/models/__init__.py +++ b/askbot/models/__init__.py @@ -923,7 +923,7 @@ def user_assert_can_delete_answer(self, answer = None): 'you can delete only your own posts' ) low_rep_error_message = _( - 'Sorry, to deleted other people\' posts, a minimum ' + 'Sorry, to delete other people\'s posts, a minimum ' 'reputation of %(min_rep)s is required' ) % \ {'min_rep': askbot_settings.MIN_REP_TO_DELETE_OTHERS_POSTS} @@ -1767,14 +1767,15 @@ def user_edit_answer( ): if force == False: self.assert_can_edit_answer(answer) + answer.apply_edit( - edited_at = timestamp, - edited_by = self, - text = body_text, - comment = revision_comment, - wiki = wiki, - is_private = is_private, - by_email = by_email + edited_at=timestamp, + edited_by=self, + text=body_text, + comment=revision_comment, + wiki=wiki, + is_private=is_private, + by_email=by_email ) answer.thread.invalidate_cached_data() diff --git a/askbot/models/post.py b/askbot/models/post.py index 609c4f9e..0c5e2b00 100644 --- a/askbot/models/post.py +++ b/askbot/models/post.py @@ -40,7 +40,7 @@ from askbot.models.base import BaseQuerySetManager, DraftContent #todo: maybe merge askbot.utils.markup and forum.utils.html from askbot.utils.diff import textDiff as htmldiff -from askbot.utils import mysql +from askbot.search import mysql class PostToGroup(models.Model): post = models.ForeignKey('Post') @@ -59,6 +59,15 @@ class PostQuerySet(models.query.QuerySet): #todo: we may not need this query set class, #as all methods on this class seem to want to #belong to Thread manager or Query set. + def get_for_user(self, user): + if askbot_settings.GROUPS_ENABLED: + if user is None or user.is_anonymous(): + groups = [get_global_group()] + else: + groups = user.get_groups() + return self.filter(groups__in = groups).distinct() + else: + return self def get_by_text_query(self, search_query): """returns a query set of questions, @@ -156,24 +165,16 @@ class PostManager(BaseQuerySetManager): def get_query_set(self): return PostQuerySet(self.model) - def get_questions(self): - return self.filter(post_type='question') + def get_questions(self, user=None): + questions = self.filter(post_type='question') + return questions.get_for_user(user) - def get_answers(self, user = None): + def get_answers(self, user=None): """returns query set of answer posts, optionally filtered to exclude posts of groups to which user does not belong""" answers = self.filter(post_type='answer') - - if askbot_settings.GROUPS_ENABLED: - if user is None or user.is_anonymous(): - groups = [get_global_group()] - else: - groups = user.get_groups() - answers = answers.filter(groups__in = groups).distinct() - - return answers - + return answers.get_for_user(user) def get_comments(self): return self.filter(post_type='comment') @@ -1725,9 +1726,10 @@ class Post(models.Model): ##it is important to do this before __apply_edit b/c of signals!!! if self.is_private() != is_private: if is_private: - self.make_private(self.author) + #todo: make private for author or for the editor? + self.thread.make_private(self.author) else: - self.make_public() + self.thread.make_public(recursive=False) self.__apply_edit( edited_at=edited_at, diff --git a/askbot/models/question.py b/askbot/models/question.py index 36a1725e..f94265b0 100644 --- a/askbot/models/question.py +++ b/askbot/models/question.py @@ -6,6 +6,7 @@ from django.conf import settings as django_settings from django.db import models from django.contrib.auth.models import User from django.core import cache # import cache, not from cache import cache, to be able to monkey-patch cache.cache in test cases +from django.core import exceptions as django_exceptions from django.core.urlresolvers import reverse from django.utils.hashcompat import md5_constructor from django.utils.translation import ugettext as _ @@ -29,7 +30,7 @@ from askbot.models.user import Group, PERSONAL_GROUP_NAME_PREFIX from askbot.models import signals from askbot import const from askbot.utils.lists import LazyList -from askbot.utils import mysql +from askbot.search import mysql from askbot.utils.slug import slugify from askbot.skins.loaders import get_template #jinja2 template loading enviroment from askbot.search.state_manager import DummySearchState @@ -176,7 +177,7 @@ class ThreadManager(BaseQuerySetManager): """returns a query set of questions, matching the full text query """ - if django_settings.ENABLE_HAYSTACK_SEARCH: + if getattr(django_settings, 'ENABLE_HAYSTACK_SEARCH', False): from askbot.search.haystack import AskbotSearchQuerySet hs_qs = AskbotSearchQuerySet().filter(content=search_query) return hs_qs.get_django_queryset() @@ -612,6 +613,8 @@ class Thread(models.Model): group_ids = thread_groups.values_list('group_id', flat=True) + group_ids = list(group_ids)#force query for MySQL + from askbot.models import GroupMembership user_ids = GroupMembership.objects.filter( group__id__in=group_ids @@ -635,7 +638,7 @@ class Thread(models.Model): thread_groups = thread_groups[:max_count] group_ids = thread_groups.values_list('group_id', flat=True) - return Group.objects.filter(id__in=group_ids) + return Group.objects.filter(id__in=list(group_ids))#force list 4 mysql def update_favorite_count(self): self.favourite_count = FavoriteQuestion.objects.filter(thread=self).count() @@ -717,7 +720,7 @@ class Thread(models.Model): def get_answers_by_user(self, user): """regardless - deleted or not""" - return self.posts.filter(post_type = 'answer', author = user) + return self.posts.filter(post_type='answer', author=user, deleted=False) def has_answer_by_user(self, user): #use len to cache the queryset @@ -758,14 +761,26 @@ class Thread(models.Model): if user is None or user.is_anonymous(): return self.posts.get_answers().filter(deleted=False) else: - if user.is_administrator() or user.is_moderator(): - return self.posts.get_answers(user = user) - else: - return self.posts.get_answers(user = user).filter( - models.Q(deleted = False) \ - | models.Q(author = user) \ - | models.Q(deleted_by = user) - ) + return self.posts.get_answers( + user=user + ).filter(deleted=False) + # return self.posts.get_answers(user=user).filter( + # models.Q(deleted=False) \ + # | models.Q(author=user) \ + # | models.Q(deleted_by=user) + # ) + #we used to show deleted answers to admins, + #users who deleted those answers and answer owners + #but later decided to not show deleted answers at all + #because it makes caching the post lists for thread easier + #if user.is_administrator() or user.is_moderator(): + # return self.posts.get_answers(user=user) + #else: + # return self.posts.get_answers(user=user).filter( + # models.Q(deleted=False) \ + # | models.Q(author=user) \ + # | models.Q(deleted_by=user) + # ) def invalidate_cached_thread_content_fragment(self): cache.cache.delete(self.SUMMARY_CACHE_KEY_TPL % self.id) @@ -878,7 +893,8 @@ class Thread(models.Model): #if moderated - then author is guaranteed to be the #limited visibility enquirer published_answer_ids = self.posts.get_answers( - user=question_post.author#todo: may be > 1 + user=question_post.author + #todo: may be > 1 user ).filter( deleted=False ).order_by( @@ -893,9 +909,13 @@ class Thread(models.Model): #now put those answers first answer_map = dict([(answer.id, answer) for answer in answers]) for answer_id in published_answer_ids: - answer = answer_map[answer_id] - answers.remove(answer) - answers.insert(0, answer) + #note that answer map may not contain answers publised + #to the question enquirer, because current user may + #not have access to that answer, so we use the .get() method + answer = answer_map.get(answer_id, None) + if answer: + answers.remove(answer) + answers.insert(0, answer) return (question_post, answers, post_to_author, published_answer_ids) @@ -1141,8 +1161,8 @@ class Thread(models.Model): #modified tags go on to recounting their use #todo - this can actually be done asynchronously - not so important modified_tags, unused_tags = separate_unused_tags(removed_tags) - delete_tags(unused_tags)#tags with used_count == 0 are deleted + delete_tags(unused_tags)#tags with used_count == 0 are deleted modified_tags = removed_tags #add new tags to the relation @@ -1156,8 +1176,9 @@ class Thread(models.Model): added_tags = list(reused_tags) #tag moderation is in the call below created_tags = Tag.objects.create_in_bulk( - tag_names = new_tagnames, user = user - ) + tag_names=new_tagnames, + user=user + ) added_tags.extend(created_tags) #todo: not nice that assignment of added_tags is way above @@ -1199,15 +1220,15 @@ class Thread(models.Model): #################################################################### self.update_summary_html() # regenerate question/thread summary html #################################################################### - #if there are any modified tags, update their use counts + modified_tags = set(modified_tags) - set(unused_tags) if modified_tags: Tag.objects.update_use_counts(modified_tags) signals.tags_updated.send(None, - thread = self, - tags = modified_tags, - user = user, - timestamp = timestamp + thread=self, + tags=modified_tags, + user=user, + timestamp=timestamp ) return True @@ -1234,6 +1255,9 @@ class Thread(models.Model): if None in (retagged_by, retagged_at, tagnames): raise Exception('arguments retagged_at, retagged_by and tagnames are required') + if len(tagnames) > 125:#todo: remove magic number!!! + raise django_exceptions.ValidationError('tagnames value too long') + thread_question = self._question_post() self.tagnames = tagnames.strip() @@ -1281,7 +1305,7 @@ class Thread(models.Model): return last_updated_at, last_updated_by - def get_summary_html(self, search_state, visitor = None): + def get_summary_html(self, search_state=None, visitor = None): html = self.get_cached_summary_html(visitor) if not html: html = self.update_summary_html(visitor) @@ -1296,6 +1320,9 @@ class Thread(models.Model): re.UNICODE ) + if search_state is None: + search_state = DummySearchState() + while True: match = regex.search(html) if not match: @@ -1316,6 +1343,12 @@ class Thread(models.Model): return cache.cache.get(self.SUMMARY_CACHE_KEY_TPL % self.id) def update_summary_html(self, visitor = None): + #todo: it is quite wrong that visitor is an argument here + #because we do not include any visitor-related info in the cache key + #ideally cache should be shareable between users, so straight up + #using the user id for cache is wrong, we could use group + #memberships, but in that case we'd need to be more careful with + #cache invalidation context = { 'thread': self, #fetch new question post to make sure we're up-to-date diff --git a/askbot/search/mysql.py b/askbot/search/mysql.py index df86070d..055b30ca 100644 --- a/askbot/search/mysql.py +++ b/askbot/search/mysql.py @@ -1,7 +1,6 @@ +"""Utilities for the MySQL backend""" from django.db import connection -SUPPORTS_FTS = None -HINT_TABLE = None NO_FTS_WARNING = """ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! !! @@ -11,22 +10,15 @@ NO_FTS_WARNING = """ !! !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! """ +SUPPORTS_FTS = None -def supports_full_text_search(hint_table = None): - """True if the database engine is MyISAM - hint_table - is the table that we look into to determine - whether database supports FTS or not. - """ +def supports_full_text_search(): + """True if the database engine is MyISAM""" + from askbot.models import Post global SUPPORTS_FTS - global HINT_TABLE if SUPPORTS_FTS is None: cursor = connection.cursor() - if hint_table: - table_name = hint_table - HINT_TABLE = hint_table - else: - from askbot.models import Post - table_name = Post._meta.db_table + table_name = Post._meta.db_table cursor.execute("SHOW CREATE TABLE %s" % table_name) data = cursor.fetchone() if 'ENGINE=MyISAM' in data[1]: @@ -35,19 +27,12 @@ def supports_full_text_search(hint_table = None): SUPPORTS_FTS = False return SUPPORTS_FTS - question_index_sql = get_create_full_text_index_sql( - index_name, - table_namee, - ('title','text','tagnames',) - ) def get_create_full_text_index_sql(index_name, table_name, column_list): cursor = connection.cursor() column_sql = '(%s)' % ','.join(column_list) sql = 'CREATE FULLTEXT INDEX %s on %s %s' % (index_name, table_name, column_sql) - cursor.execute(question_index_sql) + cursor.execute(sql) return sql - else: - print NO_FTS_WARNING def get_drop_index_sql(index_name, table_name): return 'ALTER TABLE %s DROP INDEX %s' % (table_name, index_name) diff --git a/askbot/search/postgresql/user_profile_search_16102012.plsql b/askbot/search/postgresql/user_profile_search_16102012.plsql new file mode 100644 index 00000000..ca00a5d3 --- /dev/null +++ b/askbot/search/postgresql/user_profile_search_16102012.plsql @@ -0,0 +1,98 @@ +/* +Script depends on functions defined for general askbot full text search. +to_tsvector(), add_tsvector_column() + +calculates text search vector for the user profile +the searched fields are: +1) user name +2) user profile +3) group names - for groups to which user belongs +*/ +CREATE OR REPLACE FUNCTION get_auth_user_tsv(user_id integer) +RETURNS tsvector AS +$$ +DECLARE + group_query text; + user_query text; + onerow record; + tsv tsvector; +BEGIN + group_query = + 'SELECT user_group.name as group_name ' || + 'FROM auth_group AS user_group ' || + 'INNER JOIN auth_user_groups AS gm ' || + 'ON gm.user_id= ' || user_id || ' AND gm.group_id=user_group.id'; + + tsv = to_tsvector(''); + FOR onerow in EXECUTE group_query LOOP + tsv = tsv || to_tsvector(onerow.group_name); + END LOOP; + + user_query = 'SELECT username, about FROM auth_user WHERE id=' || user_id; + FOR onerow in EXECUTE user_query LOOP + tsv = tsv || to_tsvector(onerow.username) || to_tsvector(onerow.about); + END LOOP; + RETURN tsv; +END; +$$ LANGUAGE plpgsql; + +/* create tsvector columns in the content tables */ +SELECT add_tsvector_column('text_search_vector', 'auth_user'); + +/* populate tsvectors with data */ +UPDATE auth_user SET text_search_vector = get_auth_user_tsv(id); + +/* one trigger per table for tsv updates */ + +/* set up auth_user triggers */ +CREATE OR REPLACE FUNCTION auth_user_tsv_update_handler() +RETURNS trigger AS +$$ +BEGIN + new.text_search_vector = get_auth_user_tsv(new.id); + RETURN new; +END; +$$ LANGUAGE plpgsql; +DROP TRIGGER IF EXISTS auth_user_tsv_update_trigger ON auth_user; + +CREATE TRIGGER auth_user_tsv_update_trigger +BEFORE INSERT OR UPDATE ON auth_user +FOR EACH ROW EXECUTE PROCEDURE auth_user_tsv_update_handler(); + +/* group membership trigger - reindex users when group membership + * changes */ +CREATE OR REPLACE FUNCTION group_membership_tsv_update_handler() +RETURNS trigger AS +$$ +DECLARE + tsv tsvector; + user_query text; +BEGIN + IF (TG_OP = 'INSERT') THEN + user_query = 'UPDATE auth_user SET username=username WHERE ' || + 'id=' || new.user_id; + ELSE + user_query = 'UPDATE auth_user SET username=username WHERE ' || + 'id=' || old.user_id; + END IF; + /* just trigger the tsv update on user */ + EXECUTE user_query; + RETURN NULL; +END; +$$ LANGUAGE plpgsql; + +DROP TRIGGER IF EXISTS group_membership_tsv_update_trigger +ON auth_user_groups; + +CREATE TRIGGER group_membership_tsv_update_trigger +AFTER INSERT OR DELETE +ON auth_user_groups +FOR EACH ROW EXECUTE PROCEDURE group_membership_tsv_update_handler(); + +/* todo: whenever group name changes - also + * reindex users belonging to the group */ + +DROP INDEX IF EXISTS auth_user_search_idx; + +CREATE INDEX auth_user_search_idx ON auth_user +USING gin(text_search_vector); diff --git a/askbot/setup_templates/settings.py b/askbot/setup_templates/settings.py index 5a0ec4a9..de737419 100644 --- a/askbot/setup_templates/settings.py +++ b/askbot/setup_templates/settings.py @@ -163,6 +163,7 @@ INSTALLED_APPS = ( 'django.contrib.sitemaps', #'debug_toolbar', #'haystack', + 'tinymce', 'askbot', 'askbot.deps.django_authopenid', #'askbot.importers.stackexchange', #se loader @@ -245,10 +246,11 @@ HAYSTACK_SEARCH_ENGINE = 'simple' TINYMCE_COMPRESSOR = True TINYMCE_SPELLCHECKER = False -TINYMCE_JS_ROOT = os.path.join(STATIC_ROOT, 'common/media/js/tinymce/') -TINYMCE_URL = STATIC_URL + 'common/media/js/tinymce/' +TINYMCE_JS_ROOT = os.path.join(STATIC_ROOT, 'default/media/js/tinymce/') +TINYMCE_URL = STATIC_URL + 'default/media/js/tinymce/' TINYMCE_DEFAULT_CONFIG = { 'plugins': 'askbot_imageuploader,askbot_attachment', + 'convert_urls': False, 'theme': 'advanced', 'content_css': STATIC_URL + 'default/media/style/tinymce/content.css', 'force_br_newlines': True, diff --git a/askbot/setup_templates/settings.py.mustache b/askbot/setup_templates/settings.py.mustache index 4cbc7dce..911baa0b 100644 --- a/askbot/setup_templates/settings.py.mustache +++ b/askbot/setup_templates/settings.py.mustache @@ -168,6 +168,7 @@ INSTALLED_APPS = ( #Optional, to enable haystack search #'haystack', 'askbot', + 'tinymce', 'askbot.deps.django_authopenid', #'askbot.importers.stackexchange', #se loader 'south', @@ -251,10 +252,11 @@ HAYSTACK_SEARCH_ENGINE = 'simple' TINYMCE_COMPRESSOR = True TINYMCE_SPELLCHECKER = False -TINYMCE_JS_ROOT = os.path.join(STATIC_ROOT, 'common/media/js/tinymce/') -TINYMCE_URL = STATIC_URL + 'common/media/js/tinymce/' +TINYMCE_JS_ROOT = os.path.join(STATIC_ROOT, 'default/media/js/tinymce/') +TINYMCE_URL = STATIC_URL + 'default/media/js/tinymce/' TINYMCE_DEFAULT_CONFIG = { 'plugins': 'askbot_imageuploader,askbot_attachment', + 'convert_urls': False, 'theme': 'advanced', 'content_css': STATIC_URL + 'default/media/style/tinymce/content.css', 'force_br_newlines': True, diff --git a/askbot/templates/user_profile/user_favorites.html b/askbot/templates/user_profile/user_favorites.html index 08c3c688..ffdcbd0d 100644 --- a/askbot/templates/user_profile/user_favorites.html +++ b/askbot/templates/user_profile/user_favorites.html @@ -1,7 +1,7 @@ {% extends "user_profile/user.html" %} <!-- user_favorites.html --> {% block profilesection %} - <h1 class="section-title"> {% trans %}followed questions{% endtrans %}</h1> + {% trans %}followed questions{% endtrans %} {% endblock %} {% block usercontent %} {% include "user_profile/users_questions.html" %} diff --git a/askbot/templates/user_profile/user_network.html b/askbot/templates/user_profile/user_network.html index f64d95b0..51de7b55 100644 --- a/askbot/templates/user_profile/user_network.html +++ b/askbot/templates/user_profile/user_network.html @@ -1,7 +1,7 @@ {% extends "user_profile/user.html" %} {% import "macros.html" as macros %} <!-- user_network.html --> -{% block profileseciton %} +{% block profilesection %} {% trans %}network{% endtrans %} {% endblock %} {% block usercontent %} diff --git a/askbot/tests/__init__.py b/askbot/tests/__init__.py index 59db8f67..7e7e3c48 100644 --- a/askbot/tests/__init__.py +++ b/askbot/tests/__init__.py @@ -18,6 +18,7 @@ from askbot.tests.haystack_search_tests import * from askbot.tests.email_parsing_tests import * from askbot.tests.widget_tests import * from askbot.tests.category_tree_tests import CategoryTreeTests +from askbot.tests.question_views_tests import * from askbot.tests.user_model_tests import UserModelTests from askbot.tests.user_views_tests import * from askbot.tests.utils_tests import * diff --git a/askbot/tests/db_api_tests.py b/askbot/tests/db_api_tests.py index b9e8f5b9..8a6ffe0e 100644 --- a/askbot/tests/db_api_tests.py +++ b/askbot/tests/db_api_tests.py @@ -9,6 +9,7 @@ from django.test.client import Client from django.conf import settings from django.contrib.auth.models import AnonymousUser from django import forms +from askbot import exceptions as askbot_exceptions from askbot.tests.utils import AskbotTestCase from askbot.tests.utils import with_settings from askbot import models @@ -38,6 +39,7 @@ class DBApiTests(AskbotTestCase): user = user, question = question, ) + return self.answer def assert_post_is_deleted(self, post): self.assertTrue(post.deleted == True) @@ -82,6 +84,25 @@ class DBApiTests(AskbotTestCase): ) return self.reload_object(q) + def test_user_cannot_post_two_answers(self): + question = self.post_question(user=self.user) + answer = self.post_answer(question=question, user=self.user) + self.assertRaises( + askbot_exceptions.AnswerAlreadyGiven, + self.post_answer, + question=question, + user=self.user + ) + + def test_user_can_post_answer_after_deleting_one(self): + question = self.post_question(user=self.user) + answer = self.post_answer(question=question, user=self.user) + self.user.delete_answer(answer=answer) + answer2 = self.post_answer(question=question, user=self.user) + answers = question.thread.get_answers(user=self.user) + self.assertEqual(answers.count(), 1) + self.assertEqual(answers[0], answer2) + def test_post_anonymous_question(self): q = self.ask_anonymous_question() self.assertTrue(q.is_anonymous) @@ -165,11 +186,11 @@ class DBApiTests(AskbotTestCase): self.assertTrue(saved_question.thread.answer_count == 1) def test_unused_tag_is_auto_deleted(self): - self.user.retag_question(self.question, tags = 'one-tag') + self.user.retag_question(self.question, tags='one-tag') tag = models.Tag.objects.get(name='one-tag') self.assertEquals(tag.used_count, 1) self.assertEquals(tag.deleted, False) - self.user.retag_question(self.question, tags = 'two-tag') + self.user.retag_question(self.question, tags='two-tag') count = models.Tag.objects.filter(name='one-tag').count() self.assertEquals(count, 0) diff --git a/askbot/tests/question_views_tests.py b/askbot/tests/question_views_tests.py new file mode 100644 index 00000000..b1836f9e --- /dev/null +++ b/askbot/tests/question_views_tests.py @@ -0,0 +1,207 @@ +from bs4 import BeautifulSoup +from askbot.conf import settings as askbot_settings +from askbot import const +from askbot.tests.utils import AskbotTestCase +from askbot import models +from askbot.models.tag import get_global_group +from django.core.urlresolvers import reverse + + +class PrivateQuestionViewsTests(AskbotTestCase): + + def setUp(self): + self._backup = askbot_settings.GROUPS_ENABLED + askbot_settings.update('GROUPS_ENABLED', True) + self.user = self.create_user('user') + self.group = models.Group.objects.create( + name='the group', openness=models.Group.OPEN + ) + self.user.join_group(self.group) + self.qdata = { + 'title': 'test question title', + 'text': 'test question text' + } + self.client.login(user_id=self.user.id, method='force') + + def tearDown(self): + askbot_settings.update('GROUPS_ENABLED', self._backup) + + def test_post_private_question(self): + data = self.qdata + data['post_privately'] = 'checked' + response1 = self.client.post(reverse('ask'), data=data) + response2 = self.client.get(response1['location']) + dom = BeautifulSoup(response2.content) + title = dom.find('h1').text + self.assertTrue(const.POST_STATUS['private'] in title) + question = models.Thread.objects.get(id=1) + self.assertEqual(question.title, self.qdata['title']) + self.assertFalse(get_global_group() in set(question.groups.all())) + + #private question is not accessible to unauthorized users + self.client.logout() + response = self.client.get(question._question_post().get_absolute_url()) + self.assertEqual(response.status_code, 302) + self.assertEqual(response.content, '') + #private question link is not shown on the main page + #to unauthorized users + response = self.client.get(reverse('questions')) + self.assertFalse(self.qdata['title'] in response.content) + #private question link is not shown on the poster profile + #to the unauthorized users + response = self.client.get(self.user.get_profile_url()) + self.assertFalse(self.qdata['title'] in response.content) + + def test_publish_private_question(self): + question = self.post_question(user=self.user, is_private=True) + title = question.thread.get_title() + self.assertTrue(const.POST_STATUS['private'] in title) + data = self.qdata + #data['post_privately'] = 'false' + data['select_revision'] = 'false' + data['text'] = 'edited question text' + response1 = self.client.post( + reverse('edit_question', kwargs={'id':question.id}), + data=data + ) + response2 = self.client.get(question.get_absolute_url()) + dom = BeautifulSoup(response2.content) + title = dom.find('h1').text + self.assertTrue(get_global_group() in set(question.groups.all())) + self.assertEqual(title, self.qdata['title']) + + self.client.logout() + response = self.client.get(question.get_absolute_url()) + self.assertTrue('edited question text' in response.content) + + def test_privatize_public_question(self): + question = self.post_question(user=self.user) + title = question.thread.get_title() + self.assertFalse(const.POST_STATUS['private'] in title) + data = self.qdata + data['post_privately'] = 'checked' + data['select_revision'] = 'false' + response1 = self.client.post( + reverse('edit_question', kwargs={'id':question.id}), + data=data + ) + response2 = self.client.get(question.get_absolute_url()) + dom = BeautifulSoup(response2.content) + title = dom.find('h1').text + self.assertFalse(get_global_group() in set(question.groups.all())) + self.assertTrue(const.POST_STATUS['private'] in title) + + def test_private_checkbox_is_on_when_editing_private_question(self): + question = self.post_question(user=self.user, is_private=True) + response = self.client.get( + reverse('edit_question', kwargs={'id':question.id}) + ) + dom = BeautifulSoup(response.content) + checkbox = dom.find( + 'input', attrs={'type': 'checkbox', 'name': 'post_privately'} + ) + self.assertEqual(checkbox['checked'], 'checked') + + def test_private_checkbox_is_off_when_editing_public_question(self): + question = self.post_question(user=self.user) + response = self.client.get( + reverse('edit_question', kwargs={'id':question.id}) + ) + dom = BeautifulSoup(response.content) + checkbox = dom.find( + 'input', attrs={'type': 'checkbox', 'name': 'post_privately'} + ) + self.assertEqual(checkbox.get('checked', False), False) + + +class PrivateAnswerViewsTests(AskbotTestCase): + + def setUp(self): + self._backup = askbot_settings.GROUPS_ENABLED + askbot_settings.update('GROUPS_ENABLED', True) + self.user = self.create_user('user') + group = models.Group.objects.create( + name='the group', openness=models.Group.OPEN + ) + self.user.join_group(group) + self.question = self.post_question(user=self.user) + self.client.login(user_id=self.user.id, method='force') + + def tearDown(self): + askbot_settings.update('GROUPS_ENABLED', self._backup) + + def test_post_private_answer(self): + response1 = self.client.post( + reverse('answer', kwargs={'id': self.question.id}), + data={'text': 'some answer text', 'post_privately': 'checked'} + ) + answer = self.question.thread.get_answers(user=self.user)[0] + self.assertFalse(get_global_group() in set(answer.groups.all())) + self.client.logout() + + user2 = self.create_user('user2') + self.client.login(user_id=user2.id, method='force') + response = self.client.get(self.question.get_absolute_url()) + self.assertFalse('some answer text' in response.content) + + self.client.logout() + response = self.client.get(self.question.get_absolute_url()) + self.assertFalse('some answer text' in response.content) + + + def test_private_checkbox_is_on_when_editing_private_answer(self): + answer = self.post_answer( + question=self.question, user=self.user, is_private=True + ) + response = self.client.get( + reverse('edit_answer', kwargs={'id': answer.id}) + ) + dom = BeautifulSoup(response.content) + checkbox = dom.find( + 'input', attrs={'type': 'checkbox', 'name': 'post_privately'} + ) + self.assertEqual(checkbox['checked'], 'checked') + + def test_privaet_checkbox_is_off_when_editing_public_answer(self): + answer = self.post_answer(question=self.question, user=self.user) + response = self.client.get( + reverse('edit_answer', kwargs={'id': answer.id}) + ) + dom = BeautifulSoup(response.content) + checkbox = dom.find( + 'input', attrs={'type': 'checkbox', 'name': 'post_privately'} + ) + self.assertEqual(checkbox.get('checked', False), False) + + def test_publish_private_answer(self): + answer = self.post_answer( + question=self.question, user=self.user, is_private=True + ) + self.client.post( + reverse('edit_answer', kwargs={'id': answer.id}), + data={'text': 'edited answer text', 'select_revision': 'false'} + ) + answer = self.reload_object(answer) + self.assertTrue(get_global_group() in answer.groups.all()) + self.client.logout() + response = self.client.get(self.question.get_absolute_url()) + self.assertTrue('edited answer text' in response.content) + + + def test_privatize_public_answer(self): + answer = self.post_answer(question=self.question, user=self.user) + self.client.post( + reverse('edit_answer', kwargs={'id': answer.id}), + data={ + 'text': 'edited answer text', + 'post_privately': 'checked', + 'select_revision': 'false' + } + ) + #check that answer is not visible to the "everyone" group + answer = self.reload_object(answer) + self.assertFalse(get_global_group() in answer.groups.all()) + #check that countent is not seen by an anonymous user + self.client.logout() + response = self.client.get(self.question.get_absolute_url()) + self.assertFalse('edited answer text' in response.content) diff --git a/askbot/tests/user_model_tests.py b/askbot/tests/user_model_tests.py index df4974dd..e46cdb77 100644 --- a/askbot/tests/user_model_tests.py +++ b/askbot/tests/user_model_tests.py @@ -15,3 +15,13 @@ class UserModelTests(AskbotTestCase): group=group, user=user ) self.assertEqual(memberships.count(), 1) + + def test_delete_user(self): + user = self.create_user('user') + user.delete() + self.assertRaises(User.DoesNotExist, User.objects.get, username='user') + + def test_rename_user(self): + user = self.create_user('user') + user.username = 'user2' + user.save() diff --git a/askbot/utils/mysql.py b/askbot/utils/mysql.py deleted file mode 100644 index cf0e71ef..00000000 --- a/askbot/utils/mysql.py +++ /dev/null @@ -1,36 +0,0 @@ -"""Utilities for the MySQL backend""" -from django.db import connection - -#in-memory cached variable -SUPPORTS_FTS = None - -def supports_full_text_search(): - """True if the database engine is MyISAM""" - from askbot.models import Post - global SUPPORTS_FTS - if SUPPORTS_FTS is None: - cursor = connection.cursor() - table_name = Post._meta.db_table - cursor.execute("SHOW CREATE TABLE %s" % table_name) - data = cursor.fetchone() - if 'ENGINE=MyISAM' in data[1]: - SUPPORTS_FTS = True - else: - SUPPORTS_FTS = False - return SUPPORTS_FTS - - -# This is needed to maintain compatibility with the old 0004 migration -# Usually South migrations should be self-contained and shouldn't depend on anything but themselves, -# but 0004 is an unfortunate exception -def supports_full_text_search_migr0004(): - global SUPPORTS_FTS - if SUPPORTS_FTS is None: - cursor = connection.cursor() - cursor.execute("SHOW CREATE TABLE question") # In migration 0004 model forum.Question used db table `question` - data = cursor.fetchone() - if 'ENGINE=MyISAM' in data[1]: - SUPPORTS_FTS = True - else: - SUPPORTS_FTS = False - return SUPPORTS_FTS diff --git a/askbot/views/users.py b/askbot/views/users.py index 707f4e14..c22fd294 100644 --- a/askbot/views/users.py +++ b/askbot/views/users.py @@ -371,9 +371,15 @@ def user_stats(request, user, context): # # Questions # - questions = user.posts.get_questions().filter(**question_filter).\ - order_by('-points', '-thread__last_activity_at').\ - select_related('thread', 'thread__last_activity_by')[:100] + questions = user.posts.get_questions( + user=request.user + ).filter( + **question_filter + ).order_by( + '-points', '-thread__last_activity_at' + ).select_related( + 'thread', 'thread__last_activity_by' + )[:100] #added this if to avoid another query if questions is less than 100 if len(questions) < 100: diff --git a/askbot/views/writers.py b/askbot/views/writers.py index 8fcea796..db7a24d2 100644 --- a/askbot/views/writers.py +++ b/askbot/views/writers.py @@ -496,13 +496,13 @@ def edit_answer(request, id): if form.has_changed(): user = form.get_post_user(request.user) user.edit_answer( - answer = answer, - body_text = form.cleaned_data['text'], - revision_comment = form.cleaned_data['summary'], - wiki = form.cleaned_data.get('wiki', answer.wiki), - is_private = form.cleaned_data.get('is_private', False) - #todo: add wiki field to form - ) + answer=answer, + body_text=form.cleaned_data['text'], + revision_comment=form.cleaned_data['summary'], + wiki=form.cleaned_data.get('wiki', answer.wiki), + is_private=form.cleaned_data.get('post_privately', False) + #todo: add wiki field to form + ) return HttpResponseRedirect(answer.get_absolute_url()) else: revision_form = forms.RevisionForm(answer, revision) |