diff options
author | Evgeny Fadeev <evgeny.fadeev@gmail.com> | 2012-02-25 18:19:56 -0300 |
---|---|---|
committer | Evgeny Fadeev <evgeny.fadeev@gmail.com> | 2012-02-25 18:19:56 -0300 |
commit | d93adae8d5237b873729e5af245c3eb3ccc8d8d8 (patch) | |
tree | 0fbe97b05515922187ecf08a11bd358f0823ab12 | |
parent | 0ab7239541921558914e0c7709a242b5daba28ac (diff) | |
download | askbot-d93adae8d5237b873729e5af245c3eb3ccc8d8d8.tar.gz askbot-d93adae8d5237b873729e5af245c3eb3ccc8d8d8.tar.bz2 askbot-d93adae8d5237b873729e5af245c3eb3ccc8d8d8.zip |
made "bare" english django.po file
40 files changed, 537 insertions, 537 deletions
diff --git a/askbot/const/__init__.py b/askbot/const/__init__.py index 0f981dee..6fef38d7 100644 --- a/askbot/const/__init__.py +++ b/askbot/const/__init__.py @@ -122,7 +122,7 @@ TYPE_ACTIVITY = ( (TYPE_ACTIVITY_COMMENT_ANSWER, _('commented answer')), (TYPE_ACTIVITY_UPDATE_QUESTION, _('edited question')), (TYPE_ACTIVITY_UPDATE_ANSWER, _('edited answer')), - (TYPE_ACTIVITY_PRIZE, _('received award')), + (TYPE_ACTIVITY_PRIZE, _('received badge')), (TYPE_ACTIVITY_MARK_ANSWER, _('marked best answer')), (TYPE_ACTIVITY_VOTE_UP, _('upvoted')), (TYPE_ACTIVITY_VOTE_DOWN, _('downvoted')), @@ -193,10 +193,10 @@ assert( ) TYPE_RESPONSE = { - 'QUESTION_ANSWERED' : _('question_answered'), - 'QUESTION_COMMENTED': _('question_commented'), - 'ANSWER_COMMENTED' : _('answer_commented'), - 'ANSWER_ACCEPTED' : _('answer_accepted'), + 'QUESTION_ANSWERED' : _('answered question'), + 'QUESTION_COMMENTED': _('commented question'), + 'ANSWER_COMMENTED' : _('commented answer'), + 'ANSWER_ACCEPTED' : _('accepted answer'), } POST_STATUS = { diff --git a/askbot/const/message_keys.py b/askbot/const/message_keys.py index 12fa0766..2c954416 100644 --- a/askbot/const/message_keys.py +++ b/askbot/const/message_keys.py @@ -1,10 +1,16 @@ -""" +''' This file must hold keys for translatable messages that are used as variables it is important that a dummy _() function is used here this way message key will be pulled into django.po -and can still be used as a variable in python files -""" +and can still be used as a variable in python files. + +In addition, some messages are repeated too many times +in the code, so we need to be able to retreive them +by a key. Therefore we have a function here, called +get_i18n_message(). Possibly all messages included in +this file could be implemented this way. +''' _ = lambda v:v #NOTE: all strings must be explicitly put into this dictionary, @@ -14,16 +20,34 @@ __all__ = [] #messages loaded in the templates via direct _ calls _('most relevant questions') _('click to see most relevant questions') -_('by relevance') +_('relevance') _('click to see the oldest questions') -_('by date') +_('date') _('click to see the newest questions') _('click to see the least recently updated questions') -_('by activity') +_('activity') _('click to see the most recently updated questions') _('click to see the least answered questions') -_('by answers') +_('answers') _('click to see the most answered questions') _('click to see least voted questions') -_('by votes') +_('votes') _('click to see most voted questions') + +def get_i18n_message(key): + messages = { + 'BLOCKED_USERS_CANNOT_POST': _( + '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.' + ), + 'SUSPENDED_USERS_CANNOT_POST': _( + '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.' + ) + } + if key in messages: + return messages.get(key) + else: + raise KeyError(key) diff --git a/askbot/deps/django_authopenid/forms.py b/askbot/deps/django_authopenid/forms.py index c4507272..8e6ce528 100644 --- a/askbot/deps/django_authopenid/forms.py +++ b/askbot/deps/django_authopenid/forms.py @@ -447,5 +447,5 @@ class EmailPasswordForm(forms.Form): self.user_cache = User.objects.get( username = self.cleaned_data['username']) except: - raise forms.ValidationError(_("Incorrect username.")) + raise forms.ValidationError(_("sorry, there is no such user name")) return self.cleaned_data['username'] diff --git a/askbot/forms.py b/askbot/forms.py index fcf43814..2aa37e75 100644 --- a/askbot/forms.py +++ b/askbot/forms.py @@ -1088,19 +1088,25 @@ class EditUserEmailFeedsForm(forms.Form): user.followed_threads.clear() return changed -class SimpleEmailSubscribeForm(forms.Form): - SIMPLE_SUBSCRIBE_CHOICES = ( - ('y',_('okay, let\'s try!')), - ('n',_('no community email please, thanks')) - ) - subscribe = forms.ChoiceField( - widget=forms.widgets.RadioSelect, - error_messages={'required':_('please choose one of the options above')}, - choices=SIMPLE_SUBSCRIBE_CHOICES +class SubscribeForEmailUpdatesField(forms.ChoiceField): + """a simple yes or no field to subscribe for email or not""" + def __init__(self, **kwargs): + kwargs['widget'] = forms.widgets.RadioSelect + kwargs['error_messages'] = { + 'required':_('please choose one of the options above') + } + kwargs['choices'] = ( + ('y',_('okay, let\'s try!')), + ( + 'n', + _('no %(sitename)s email please, thanks') \ + % {'sitename': askbot_settings.APP_SHORT_NAME} + ) ) + super(SubscribeForEmailUpdatesField, self).__init__(**kwargs) - def __init__(self, *args, **kwargs): - super(SimpleEmailSubscribeForm, self).__init__(*args, **kwargs) +class SimpleEmailSubscribeForm(forms.Form): + subscribe = SubscribeForEmailUpdatesField() def save(self, user=None): EFF = EditUserEmailFeedsForm diff --git a/askbot/locale/en/LC_MESSAGES/django.po b/askbot/locale/en/LC_MESSAGES/django.po index 04feaef6..f3a42784 100644 --- a/askbot/locale/en/LC_MESSAGES/django.po +++ b/askbot/locale/en/LC_MESSAGES/django.po @@ -314,8 +314,8 @@ msgid "okay, let's try!" msgstr "" #: forms.py:1078 -msgid "no community email please, thanks" -msgstr "no askbot email please, thanks" +msgid "no %(sitename)s email please, thanks" +msgstr "" #: forms.py:1082 msgid "please choose one of the options above" @@ -2047,6 +2047,7 @@ msgid "coldest" msgstr "" #: const/__init__.py:47 +#: skins/default/templates/question/answer_tab_bar.html:21 msgid "most voted" msgstr "" @@ -2113,8 +2114,8 @@ msgid "edited answer" msgstr "" #: const/__init__.py:125 -msgid "received award" -msgstr "received badge" +msgid "received badge" +msgstr "" #: const/__init__.py:126 msgid "marked best answer" @@ -2173,19 +2174,19 @@ msgid "mentioned in the post" msgstr "" #: const/__init__.py:196 -msgid "question_answered" -msgstr "answered question" +msgid "answered question" +msgstr "" #: const/__init__.py:197 -msgid "question_commented" -msgstr "commented question" +msgid "commented question" +msgstr "" #: const/__init__.py:198 -msgid "answer_commented" +msgid "commented answer" msgstr "" #: const/__init__.py:199 -msgid "answer_accepted" +msgid "accepted answer" msgstr "" #: const/__init__.py:203 @@ -2285,16 +2286,16 @@ msgid "click to see most relevant questions" msgstr "" #: const/message_keys.py:17 -msgid "by relevance" -msgstr "relevance" +msgid "relevance" +msgstr "" #: const/message_keys.py:18 msgid "click to see the oldest questions" msgstr "" #: const/message_keys.py:19 -msgid "by date" -msgstr "date" +msgid "date" +msgstr "" #: const/message_keys.py:20 msgid "click to see the newest questions" @@ -2305,8 +2306,8 @@ msgid "click to see the least recently updated questions" msgstr "" #: const/message_keys.py:22 -msgid "by activity" -msgstr "activity" +msgid "activity" +msgstr "" #: const/message_keys.py:23 msgid "click to see the most recently updated questions" @@ -2317,8 +2318,8 @@ msgid "click to see the least answered questions" msgstr "" #: const/message_keys.py:25 -msgid "by answers" -msgstr "answers" +msgid "answers" +msgstr "" #: const/message_keys.py:26 msgid "click to see the most answered questions" @@ -2329,8 +2330,8 @@ msgid "click to see least voted questions" msgstr "" #: const/message_keys.py:28 -msgid "by votes" -msgstr "votes" +msgid "votes" +msgstr "" #: const/message_keys.py:29 msgid "click to see most voted questions" @@ -2391,8 +2392,8 @@ msgid "Your user name (<i>required</i>)" msgstr "" #: deps/django_authopenid/forms.py:450 -msgid "Incorrect username." -msgstr "sorry, there is no such user name" +msgid "sorry, there is no such user name" +msgstr "" #: deps/django_authopenid/urls.py:9 deps/django_authopenid/urls.py:12 #: deps/django_authopenid/urls.py:15 setup_templates/settings.py:210 @@ -2753,14 +2754,14 @@ msgstr[1] "" #: management/commands/send_email_alerts.py:423 #, python-format -msgid "%(name)s, this is an update message header for %(num)d question" -msgid_plural "%(name)s, this is an update message header for %(num)d questions" -msgstr[0] "" -"<p>Dear %(name)s,</p></p>The following question has been updated on the Q&A " +msgid "" +"<p>Dear %(name)s,</p><p>The following question has been updated on %(sitename)s" "forum:</p>" -msgstr[1] "" +msgid_plural "" "<p>Dear %(name)s,</p><p>The following %(num)d questions have been updated on " -"the Q&A forum:</p>" +"%(sitename)s</p>" +msgstr[0] "" +msgstr[1] "" #: management/commands/send_email_alerts.py:440 msgid "new question" @@ -2769,14 +2770,12 @@ msgstr "" #: management/commands/send_email_alerts.py:465 #, python-format msgid "" -"go to %(email_settings_link)s to change frequency of email updates or " -"%(admin_email)s administrator" -msgstr "" "<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 Q&A forum server.</p>" +"p><p>Sincerely,</p><p>Your friendly %(sitename)s server.</p>" +msgstr "" #: management/commands/send_unanswered_question_reminders.py:58 #, python-format @@ -2823,8 +2822,8 @@ msgid "" msgstr "" #: models/__init__.py:386 -msgid "cannot vote for own posts" -msgstr "Sorry, you cannot vote for your own posts" +msgid "Sorry, you cannot vote for your own posts" +msgstr "" #: models/__init__.py:389 msgid "Sorry your account appears to be blocked " @@ -2837,12 +2836,12 @@ msgstr "" #: models/__init__.py:404 #, python-format msgid ">%(points)s points required to upvote" -msgstr ">%(points)s points required to upvote " +msgstr "" #: models/__init__.py:410 #, python-format msgid ">%(points)s points required to downvote" -msgstr ">%(points)s points required to downvote " +msgstr "" #: models/__init__.py:425 msgid "Sorry, blocked users cannot upload files" @@ -2854,23 +2853,21 @@ msgstr "" #: models/__init__.py:428 #, python-format -msgid "" -"uploading images is limited to users with >%(min_rep)s reputation points" -msgstr "sorry, file uploading requires karma >%(min_rep)s" +msgid "sorry, file uploading requires karma >%(min_rep)s" +msgstr "" #: models/__init__.py:447 models/__init__.py:514 models/__init__.py:980 -msgid "blocked users cannot post" -msgstr "" +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 "" #: models/__init__.py:448 models/__init__.py:983 -msgid "suspended users cannot post" -msgstr "" -"Sorry, your account appears to be suspended and you cannot make new posts " +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 "" #: models/__init__.py:475 #, python-format @@ -2993,57 +2990,50 @@ msgid "" msgstr "" #: models/__init__.py:753 -msgid "cannot flag message as offensive twice" -msgstr "You have flagged this question before and cannot do it more than once" +msgid "You have flagged this question before and cannot do it more than once" +msgstr "" #: models/__init__.py:758 -msgid "blocked users cannot flag posts" +msgid "Sorry, since your account is blocked you cannot flag posts as offensive" msgstr "" -"Sorry, since your account is blocked you cannot flag posts as offensive" #: models/__init__.py:760 -msgid "suspended users cannot flag posts" -msgstr "" -"Sorry, your account appears to be suspended and you cannot make new posts " +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 "" #: models/__init__.py:762 #, python-format -msgid "need > %(min_rep)s points to flag spam" -msgstr "" -"Sorry, to flag posts as offensive a minimum reputation of %(min_rep)s is " +msgid "Sorry, to flag posts as offensive a minimum reputation of %(min_rep)s is " "required" +msgstr "" #: models/__init__.py:781 #, python-format -msgid "%(max_flags_per_day)s exceeded" -msgstr "" -"Sorry, you have exhausted the maximum number of %(max_flags_per_day)s " +msgid "Sorry, you have exhausted the maximum number of %(max_flags_per_day)s " "offensive flags per day." +msgstr "" #: models/__init__.py:792 msgid "cannot remove non-existing flag" msgstr "" #: models/__init__.py:797 -msgid "blocked users cannot remove flags" -msgstr "Sorry, since your account is blocked you cannot remove flags" +msgid "Sorry, since your account is blocked you cannot remove flags" +msgstr "" #: models/__init__.py:799 -msgid "suspended users cannot remove flags" -msgstr "" -"Sorry, your account appears to be suspended and you cannot remove flags. " +msgid "Sorry, your account appears to be suspended and you cannot remove flags. " "Please contact the forum administrator to reach a resolution." +msgstr "" #: models/__init__.py:803 #, python-format -msgid "need > %(min_rep)d point to remove flag" -msgid_plural "need > %(min_rep)d points to remove flag" +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] "" -"Sorry, to flag posts a minimum reputation of %(min_rep)d is required" msgstr[1] "" -"Sorry, to flag posts a minimum reputation of %(min_rep)d is required" #: models/__init__.py:822 msgid "you don't have the permission to remove all flags" @@ -3089,8 +3079,8 @@ msgid "Sorry, to delete comments reputation of %(min_rep)s is required" msgstr "" #: models/__init__.py:912 -msgid "cannot revoke old vote" -msgstr "sorry, but older votes cannot be revoked" +msgid "sorry, but older votes cannot be revoked" +msgstr "" #: models/__init__.py:1387 utils/functions.py:78 #, python-format @@ -3593,8 +3583,8 @@ msgstr "" #: skins/common/templates/authopenid/changeemail.html:2 #: skins/common/templates/authopenid/changeemail.html:8 #: skins/common/templates/authopenid/changeemail.html:36 -msgid "Change email" -msgstr "Change Email" +msgid "Change Email" +msgstr "" #: skins/common/templates/authopenid/changeemail.html:10 msgid "Save your email address" @@ -3602,16 +3592,15 @@ msgstr "" #: skins/common/templates/authopenid/changeemail.html:15 #, python-format -msgid "change %(email)s info" -msgstr "" +msgid "" "<span class=\"strong big\">Enter your new email into the box below</span> if " "you'd like to use another email for <strong>update subscriptions</strong>." "<br>Currently you are using <strong>%(email)s</strong>" +msgstr "" #: skins/common/templates/authopenid/changeemail.html:17 #, python-format -msgid "here is why email is required, see %(gravatar_faq_url)s" -msgstr "" +msgid "" "<span class='strong big'>Please enter your email address in the box below.</" "span> Valid email address is required on this Q&A forum. If you like, " "you can <strong>receive updates</strong> on interesting questions or entire " @@ -3619,17 +3608,16 @@ msgstr "" "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a> image for your " "account. Email addresses are never shown or otherwise shared with anybody " "else." +msgstr "" #: skins/common/templates/authopenid/changeemail.html:29 -msgid "Your new Email" -msgstr "" -"<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " +msgid "<strong>Your new Email:</strong> (will <strong>not</strong> be shown to " "anyone, must be valid)" +msgstr "" #: skins/common/templates/authopenid/changeemail.html:29 -msgid "Your Email" +msgid "<strong>Your Email</strong> (<i>must be valid, never shown to others</i>)" msgstr "" -"<strong>Your Email</strong> (<i>must be valid, never shown to others</i>)" #: skins/common/templates/authopenid/changeemail.html:36 msgid "Save Email" @@ -3653,14 +3641,13 @@ msgstr "" #: skins/common/templates/authopenid/changeemail.html:48 #, python-format -msgid "validate %(email)s info or go to %(change_email_url)s" -msgstr "" -"<span class=\"strong big\">An email with a validation link has been sent to " +msgid "<span class=\"strong big\">An email with a validation link has been sent to " "%(email)s.</span> Please <strong>follow the emailed link</strong> with your " "web browser. Email validation is necessary to help insure the proper use of " "email on <span class=\"orange\">Q&A</span>. If you would like to use " "<strong>another email</strong>, please <a " "href='%(change_email_url)s'><strong>change it again</strong></a>." +msgstr "" #: skins/common/templates/authopenid/changeemail.html:52 msgid "Email not changed" @@ -3668,12 +3655,11 @@ msgstr "" #: skins/common/templates/authopenid/changeemail.html:55 #, python-format -msgid "old %(email)s kept, if you like go to %(change_email_url)s" -msgstr "" -"<span class=\"strong big\">Your email address %(email)s has not been changed." +msgid "<span class=\"strong big\">Your email address %(email)s has not been changed." "</span> If you decide to change it later - you can always do it by editing " "it in your user profile or by using the <a " "href='%(change_email_url)s'><strong>previous form</strong></a> again." +msgstr "" #: skins/common/templates/authopenid/changeemail.html:59 msgid "Email changed" @@ -3681,38 +3667,35 @@ msgstr "" #: skins/common/templates/authopenid/changeemail.html:62 #, python-format -msgid "your current %(email)s can be used for this" -msgstr "" -"<span class='big strong'>Your email address is now set to %(email)s.</span> " +msgid "<span class='big strong'>Your email address is now set to %(email)s.</span> " "Updates on the questions that you like most will be sent to this address. " "Email notifications are sent once a day or less frequently - only when there " "are any news." +msgstr "" #: skins/common/templates/authopenid/changeemail.html:66 msgid "Email verified" msgstr "" #: skins/common/templates/authopenid/changeemail.html:69 -msgid "thanks for verifying email" -msgstr "" -"<span class=\"big strong\">Thank you for verifying your email!</span> Now " +msgid "<span class=\"big strong\">Thank you for verifying your email!</span> Now " "you can <strong>ask</strong> and <strong>answer</strong> questions. Also if " "you find a very interesting question you can <strong>subscribe for the " "updates</strong> - then will be notified about changes <strong>once a day</" "strong> or less frequently." +msgstr "" #: skins/common/templates/authopenid/changeemail.html:73 -msgid "email key not sent" -msgstr "Validation email not sent" +msgid "Validation email not sent" +msgstr "" #: skins/common/templates/authopenid/changeemail.html:76 #, python-format -msgid "email key not sent %(email)s change email here %(change_link)s" -msgstr "" -"<span class='big strong'>Your current email address %(email)s has been " +msgid "<span class='big strong'>Your current email address %(email)s has been " "validated before</span> so the new key was not sent. You can <a " "href='%(change_link)s'>change</a> email used for update subscriptions if " "necessary." +msgstr "" #: skins/common/templates/authopenid/complete.html:21 #: skins/common/templates/authopenid/complete.html:23 @@ -3721,24 +3704,17 @@ msgstr "" #: skins/common/templates/authopenid/complete.html:27 #, python-format -msgid "register new %(provider)s account info, see %(gravatar_faq_url)s" -msgstr "" -"<p><span class=\"big strong\">You are here for the first time with your " +msgid "<p><span class=\"big strong\">You are here for the first time with your " "%(provider)s login.</span> Please create your <strong>screen name</strong> " "and save your <strong>email</strong> address. Saved email address will let " "you <strong>subscribe for the updates</strong> on the most interesting " "questions and will be used to create and retrieve your unique avatar image - " "<a href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>" +msgstr "" #: skins/common/templates/authopenid/complete.html:30 #, python-format -msgid "" -"%(username)s already exists, choose another name for \n" -" %(provider)s. Email is required too, see " -"%(gravatar_faq_url)s\n" -" " -msgstr "" -"<p><span class='strong big'>Oops... looks like screen name %(username)s is " +msgid "<p><span class='strong big'>Oops... looks like screen name %(username)s is " "already used in another account.</span></p><p>Please choose another screen " "name to use with your %(provider)s login. Also, a valid email address is " "required on the <span class='orange'>Q&A</span> forum. Your email is " @@ -3746,12 +3722,11 @@ msgstr "" "strong></a> image for your account. If you like, you can <strong>receive " "updates</strong> on the interesting questions or entire forum by email. " "Email addresses are never shown or otherwise shared with anybody else.</p>" +msgstr "" #: skins/common/templates/authopenid/complete.html:34 #, python-format msgid "" -"register new external %(provider)s account info, see %(gravatar_faq_url)s" -msgstr "" "<p><span class=\"big strong\">You are here for the first time with your " "%(provider)s login.</span></p><p>You can either keep your <strong>screen " "name</strong> the same as your %(provider)s login name or choose some other " @@ -3760,41 +3735,40 @@ msgstr "" "most interesting questions. Email address is also used to create and " "retrieve your unique avatar image - <a " "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>" +"register new external %(provider)s account info, see %(gravatar_faq_url)s" +msgstr "" #: skins/common/templates/authopenid/complete.html:37 #, python-format -msgid "register new Facebook connect account info, see %(gravatar_faq_url)s" -msgstr "" -"<p><span class=\"big strong\">You are here for the first time with your " +msgid "<p><span class=\"big strong\">You are here for the first time with your " "Facebook login.</span> Please create your <strong>screen name</strong> and " "save your <strong>email</strong> address. Saved email address will let you " "<strong>subscribe for the updates</strong> on the most interesting questions " "and will be used to create and retrieve your unique avatar image - <a " "href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>" +msgstr "" #: skins/common/templates/authopenid/complete.html:40 msgid "This account already exists, please use another." msgstr "" #: skins/common/templates/authopenid/complete.html:59 -msgid "Screen name label" -msgstr "<strong>Screen Name</strong> (<i>will be shown to others</i>)" +msgid "<strong>Screen Name</strong> (<i>will be shown to others</i>)" +msgstr "" #: skins/common/templates/authopenid/complete.html:66 -msgid "Email address label" -msgstr "" -"<strong>Email Address</strong> (<i>will <strong>not</strong> be shared with " +msgid "<strong>Email Address</strong> (<i>will <strong>not</strong> be shared with " "anyone, must be valid</i>)" +msgstr "" #: skins/common/templates/authopenid/complete.html:72 #: skins/common/templates/authopenid/signup_with_password.html:36 -msgid "receive updates motivational blurb" +msgid "<strong>Receive forum updates by email</strong> - this will help our " +community grow and become more useful.<br/>By default " +<span class='orange'>Q&A</span> forum sends up to <strong>one email digest per " +week</strong> - only when there is anything new.<br/>If you like, please " +adjust this now or any time later from your user account." msgstr "" -"<strong>Receive forum updates by email</strong> - this will help our " -"community grow and become more useful.<br/>By default <span " -"class='orange'>Q&A</span> forum sends up to <strong>one email digest per " -"week</strong> - only when there is anything new.<br/>If you like, please " -"adjust this now or any time later from your user account." #: skins/common/templates/authopenid/complete.html:76 #: skins/common/templates/authopenid/signup_with_password.html:40 @@ -3833,10 +3807,8 @@ msgstr "" #: skins/common/templates/authopenid/email_validation.txt:13 msgid "" "Sincerely,\n" -"Forum Administrator" -msgstr "" -"Sincerely,\n" "Q&A Forum Administrator" +msgstr "" #: skins/common/templates/authopenid/email_validation.txt:1 msgid "Greetings from the Q&A forum" @@ -3953,8 +3925,8 @@ msgid "Password" msgstr "" #: skins/common/templates/authopenid/signin.html:106 -msgid "Login" -msgstr "Sign in" +msgid "Sign in" +msgstr "" #: skins/common/templates/authopenid/signin.html:113 msgid "To change your password - please enter the new one twice, then submit" @@ -4022,28 +3994,6 @@ msgstr "" msgid "Why use OpenID?" msgstr "" -#: skins/common/templates/authopenid/signin.html:223 -msgid "with openid it is easier" -msgstr "With the OpenID you don't need to create new username and password." - -#: skins/common/templates/authopenid/signin.html:226 -msgid "reuse openid" -msgstr "You can safely re-use the same login for all OpenID-enabled websites." - -#: skins/common/templates/authopenid/signin.html:229 -msgid "openid is widely adopted" -msgstr "" -"There are > 160,000,000 OpenID account in use. Over 10,000 sites are OpenID-" -"enabled." - -#: skins/common/templates/authopenid/signin.html:232 -msgid "openid is supported open standard" -msgstr "OpenID is based on an open standard, supported by many organizations." - -#: skins/common/templates/authopenid/signin.html:236 -msgid "Find out more" -msgstr "" - #: skins/common/templates/authopenid/signin.html:237 msgid "Get OpenID" msgstr "" @@ -4065,13 +4015,12 @@ msgid "Create login name and password" msgstr "" #: skins/common/templates/authopenid/signup_with_password.html:26 -msgid "Traditional signup info" -msgstr "" -"<span class='strong big'>If you prefer, create your forum login name and " +msgid "<span class='strong big'>If you prefer, create your forum login name and " "password here. However</span>, please keep in mind that we also support " "<strong>OpenID</strong> login method. With <strong>OpenID</strong> you can " "simply reuse your external login (e.g. Gmail or AOL) without ever sharing " "your login details with anyone and having to remember yet another password." +msgstr "" #: skins/common/templates/authopenid/signup_with_password.html:44 msgid "" @@ -4080,8 +4029,8 @@ msgid "" msgstr "" #: skins/common/templates/authopenid/signup_with_password.html:47 -msgid "Create Account" -msgstr "Signup" +msgid "Signup" +msgstr "" #: skins/common/templates/authopenid/signup_with_password.html:49 msgid "or" @@ -4115,7 +4064,7 @@ msgstr "" #: skins/common/templates/avatar/change.html:4 msgid "change avatar" -msgstr "Retag question" +msgstr "" #: skins/common/templates/avatar/change.html:17 msgid "Choose new Default" @@ -4145,12 +4094,12 @@ msgid "Delete These" msgstr "" #: skins/common/templates/question/answer_controls.html:5 -msgid "answer permanent link" -msgstr "permanent link" +msgid "permanent link" +msgstr "" #: skins/common/templates/question/answer_controls.html:6 -msgid "permanent link" -msgstr "link" +msgid "link" +msgstr "" #: skins/common/templates/question/answer_controls.html:11 #: skins/common/templates/question/question_controls.html:3 @@ -4247,8 +4196,8 @@ msgid "hide preview" msgstr "" #: skins/common/templates/widgets/related_tags.html:3 -msgid "Related tags" -msgstr "Tags" +msgid "Tags" +msgstr "" #: skins/common/templates/widgets/tag_selector.html:4 msgid "Interesting tags" @@ -4340,7 +4289,7 @@ msgstr "" #: skins/default/templates/500.jinja.html:13 msgid "see tags" -msgstr "Tags" +msgstr "" #: skins/default/templates/answer_edit.html:4 #: skins/default/templates/answer_edit.html:10 @@ -4376,8 +4325,8 @@ msgid "show preview" msgstr "" #: skins/default/templates/ask.html:4 -msgid "Ask a question" -msgstr "Ask Your Question" +msgid "Ask Your Question" +msgstr "" #: skins/default/templates/badge.html:5 skins/default/templates/badge.html:9 #: skins/default/templates/user_profile/user_recent.html:19 @@ -4409,8 +4358,8 @@ msgstr[0] "" msgstr[1] "" #: skins/default/templates/badges.html:3 -msgid "Badges summary" -msgstr "Badges" +msgid "Badges" +msgstr "" #: skins/default/templates/badges.html:5 msgid "Badges" @@ -4424,12 +4373,9 @@ msgstr "" #, python-format msgid "" "Below is the list of available badges and number \n" -"of times each type of badge has been awarded. Give us feedback at " -"%(feedback_faq_url)s.\n" -msgstr "" -"Below is the list of available badges and number \n" " of times each type of badge has been awarded. Have ideas about fun " "badges? Please, give us your <a href='%(feedback_faq_url)s'>feedback</a>\n" +msgstr "" #: skins/default/templates/badges.html:35 msgid "Community badges" @@ -4440,10 +4386,10 @@ msgid "gold badge: the highest honor and is very rare" msgstr "" #: skins/default/templates/badges.html:40 -msgid "gold badge description" -msgstr "" +msgid "" "Gold badge is the highest award in this community. To obtain it have to show " "profound knowledge and ability in addition to your active participation." +msgstr "" #: skins/default/templates/badges.html:45 msgid "" @@ -4451,17 +4397,16 @@ msgid "" msgstr "" #: skins/default/templates/badges.html:49 -msgid "silver badge description" +msgid "silver badge: occasionally awarded for the very high quality contributions" msgstr "" -"silver badge: occasionally awarded for the very high quality contributions" #: skins/default/templates/badges.html:52 msgid "bronze badge: often given as a special honor" msgstr "" #: skins/default/templates/badges.html:56 -msgid "bronze badge description" -msgstr "bronze badge: often given as a special honor" +msgid "bronze badge: often given as a special honor" +msgstr "" #: skins/default/templates/close.html:3 skins/default/templates/close.html:5 msgid "Close question" @@ -4502,15 +4447,13 @@ msgstr "" #: skins/default/templates/faq_static.html:8 msgid "" -"Before asking the question - please make sure to use search to see whether " -"your question has alredy been answered." -msgstr "" "Before you ask - please make sure to search for a similar question. You can " "search questions by their title or tags." +msgstr "" #: skins/default/templates/faq_static.html:10 -msgid "What questions should I avoid asking?" -msgstr "What kinds of questions should be avoided?" +msgid "What kinds of questions should be avoided?" +msgstr "" #: skins/default/templates/faq_static.html:11 msgid "" @@ -4524,14 +4467,11 @@ msgstr "" #: skins/default/templates/faq_static.html:14 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 " -"discussions." -msgstr "" "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 "" #: skins/default/templates/faq_static.html:15 msgid "Who moderates this community?" @@ -4547,23 +4487,21 @@ msgstr "" #: skins/default/templates/faq_static.html:18 msgid "" -"The reputation system allows users earn the authorization to perform a " -"variety of moderation tasks." -msgstr "" "Karma system allows users to earn rights to perform a variety of moderation " "tasks" +msgstr "" #: skins/default/templates/faq_static.html:20 -msgid "How does reputation system work?" -msgstr "How does karma system work?" +msgid "How does karma system work?" +msgstr "" #: skins/default/templates/faq_static.html:21 -msgid "Rep system summary" -msgstr "" +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 "" #: skins/default/templates/faq_static.html:22 #, python-format @@ -4617,12 +4555,11 @@ msgid "delete any comment" msgstr "" #: skins/default/templates/faq_static.html:74 -msgid "what is gravatar" -msgstr "How to change my picture (gravatar) and what is gravatar?" +msgid "How to change my picture (gravatar) and what is gravatar?" +msgstr "" #: skins/default/templates/faq_static.html:75 -msgid "gravatar faq info" -msgstr "" +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 " @@ -4636,6 +4573,7 @@ msgstr "" "<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:76 msgid "To register, do I need to create new password?" @@ -4677,11 +4615,9 @@ msgstr "" #: skins/default/templates/faq_static.html:85 #, python-format msgid "" -"Please ask your question at %(ask_question_url)s, help make our community " -"better!" -msgstr "" "Please <a href='%(ask_question_url)s'>ask</a> your question, help make our " "community better!" +msgstr "" #: skins/default/templates/feedback.html:3 msgid "Feedback" @@ -4976,8 +4912,8 @@ msgstr "" #: skins/default/templates/macros.html:258 #: skins/default/templates/macros.html:266 #: skins/default/templates/question/javascript.html:19 -msgid "add comment" -msgstr "post a comment" +msgid "post a comment" +msgstr "" #: skins/default/templates/macros.html:259 #, python-format @@ -5026,8 +4962,8 @@ msgstr "" #: skins/default/templates/macros.html:588 #: skins/default/templates/macros.html:595 #, python-format -msgid "page number %(num)s" -msgstr "page %(num)s" +msgid "page %(num)s" +msgstr "" #: skins/default/templates/macros.html:560 #: skins/default/templates/macros.html:599 @@ -5078,8 +5014,8 @@ msgstr "" #: skins/default/templates/question_retag.html:3 #: skins/default/templates/question_retag.html:5 -msgid "Change tags" -msgstr "Retag question" +msgid "Retag question" +msgstr "" #: skins/default/templates/question_retag.html:21 msgid "Retag" @@ -5159,10 +5095,6 @@ msgstr "" msgid "Subscribe" msgstr "" -#: skins/default/templates/tags.html:4 skins/default/templates/tags.html:10 -msgid "Tag list" -msgstr "Tags" - #: skins/default/templates/tags.html:8 #, python-format msgid "Tags, matching \"%(stag)s\"" @@ -5203,8 +5135,8 @@ msgstr "" #: skins/default/templates/users.html:15 #: skins/default/templates/user_profile/user_info.html:25 -msgid "reputation" -msgstr "karma" +msgid "karma" +msgstr "" #: skins/default/templates/users.html:20 msgid "see people who joined most recently" @@ -5386,25 +5318,21 @@ msgid "oldest answers will be shown first" msgstr "" #: skins/default/templates/question/answer_tab_bar.html:15 -msgid "oldest answers" -msgstr "oldest" +msgid "oldest" +msgstr "" #: skins/default/templates/question/answer_tab_bar.html:17 msgid "newest answers will be shown first" msgstr "" #: skins/default/templates/question/answer_tab_bar.html:18 -msgid "newest answers" -msgstr "newest" +msgid "newest" +msgstr "" #: skins/default/templates/question/answer_tab_bar.html:20 msgid "most voted answers will be shown first" msgstr "" -#: skins/default/templates/question/answer_tab_bar.html:21 -msgid "popular answers" -msgstr "most voted" - #: skins/default/templates/question/content.html:40 #: skins/default/templates/question/new_answer_form.html:48 msgid "Answer Your Own Question" @@ -5423,41 +5351,41 @@ msgid "Be the first one to answer this question!" msgstr "" #: skins/default/templates/question/new_answer_form.html:32 -msgid "you can answer anonymously and then login" -msgstr "" +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 " "<strong>please do remember to vote</strong> (after you log in)!" +msgstr "" #: skins/default/templates/question/new_answer_form.html:36 -msgid "answer your own question only to give an answer" -msgstr "" +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 " "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 "" #: skins/default/templates/question/new_answer_form.html:38 -msgid "please only give an answer, no discussions" -msgstr "" +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 "" #: skins/default/templates/question/new_answer_form.html:45 -msgid "Login/Signup to Post Your Answer" -msgstr "Login/Signup to Post" +msgid "Login/Signup to Post" +msgstr "" #: skins/default/templates/question/new_answer_form.html:50 -msgid "Answer the question" -msgstr "Post Your Answer" +msgid "Post Your Answer" +msgstr "" #: skins/default/templates/question/sharing_prompt_phrase.html:2 #, python-format @@ -5528,56 +5456,34 @@ msgid "Stats" msgstr "" #: skins/default/templates/question/sidebar.html:46 -msgid "question asked" -msgstr "Asked" +msgid "Asked" +msgstr "" #: skins/default/templates/question/sidebar.html:49 -msgid "question was seen" -msgstr "Seen" +msgid "Seen" +msgstr "" #: skins/default/templates/question/sidebar.html:49 msgid "times" msgstr "" #: skins/default/templates/question/sidebar.html:52 -msgid "last updated" -msgstr "Last updated" +msgid "Last updated" +msgstr "" #: skins/default/templates/question/sidebar.html:60 msgid "Related questions" msgstr "" -#: skins/default/templates/question/subscribe_by_email_prompt.html:7 -#: skins/default/templates/question/subscribe_by_email_prompt.html:9 -msgid "Notify me once a day when there are any new answers" -msgstr "" -"<strong>Notify me</strong> once a day by email when there are any new " -"answers or updates" - #: skins/default/templates/question/subscribe_by_email_prompt.html:11 -msgid "Notify me weekly when there are any new answers" +msgid "Email me when there are any new answers" msgstr "" -"<strong>Notify me</strong> weekly when there are any new answers or updates" - -#: skins/default/templates/question/subscribe_by_email_prompt.html:13 -msgid "Notify me immediately when there are any new answers" -msgstr "" -"<strong>Notify me</strong> immediately when there are any new answers or " -"updates" - -#: skins/default/templates/question/subscribe_by_email_prompt.html:16 -#, python-format -msgid "" -"You can always adjust frequency of email updates from your %(profile_url)s" -msgstr "" -"(note: you can always <strong><a href='%(profile_url)s?" -"sort=email_subscriptions'>change</a></strong> how often you receive updates)" #: skins/default/templates/question/subscribe_by_email_prompt.html:21 -msgid "once you sign in you will be able to subscribe for any updates here" -msgstr "" +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 "" #: skins/default/templates/user_profile/user.html:12 #, python-format @@ -5629,17 +5535,17 @@ msgid "Email subscription settings" msgstr "" #: skins/default/templates/user_profile/user_email_subscriptions.html:8 -msgid "email subscription settings info" -msgstr "" +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:22 -msgid "Stop sending email" -msgstr "Stop Email" +msgid "Stop Email" +msgstr "" #: skins/default/templates/user_profile/user_favorites.html:4 #: skins/default/templates/user_profile/user_tabs.html:27 @@ -5703,7 +5609,7 @@ msgstr "" #: skins/default/templates/user_profile/user_inbox.html:68 msgid "delete post" -msgstr "post a comment" +msgstr "" #: skins/default/templates/user_profile/user_info.html:36 msgid "update profile" @@ -5718,16 +5624,16 @@ msgid "real name" msgstr "" #: skins/default/templates/user_profile/user_info.html:58 -msgid "member for" -msgstr "member since" +msgid "member since" +msgstr "" #: skins/default/templates/user_profile/user_info.html:63 msgid "last seen" msgstr "" #: skins/default/templates/user_profile/user_info.html:69 -msgid "user website" -msgstr "website" +msgid "website" +msgstr "" #: skins/default/templates/user_profile/user_info.html:75 msgid "location" @@ -5738,8 +5644,8 @@ msgid "age" msgstr "" #: skins/default/templates/user_profile/user_info.html:83 -msgid "age unit" -msgstr "years old" +msgid "years old" +msgstr "" #: skins/default/templates/user_profile/user_info.html:88 msgid "todays unused votes" @@ -5874,10 +5780,6 @@ msgstr "" msgid "source" msgstr "" -#: skins/default/templates/user_profile/user_reputation.html:4 -msgid "karma" -msgstr "" - #: skins/default/templates/user_profile/user_reputation.html:11 msgid "Your karma change log." msgstr "" @@ -5975,29 +5877,21 @@ msgid "followers and followed users" msgstr "" #: skins/default/templates/user_profile/user_tabs.html:21 -msgid "graph of user reputation" -msgstr "Graph of user karma" - -#: skins/default/templates/user_profile/user_tabs.html:23 -msgid "reputation history" -msgstr "karma" +msgid "Graph of user karma" +msgstr "" #: skins/default/templates/user_profile/user_tabs.html:25 msgid "questions that user is following" msgstr "" #: skins/default/templates/user_profile/user_tabs.html:29 -msgid "recent activity" -msgstr "activity" +msgid "activity" +msgstr "" #: skins/default/templates/user_profile/user_tabs.html:34 views/users.py:671 msgid "user vote record" msgstr "" -#: skins/default/templates/user_profile/user_tabs.html:36 -msgid "casted votes" -msgstr "votes" - #: skins/default/templates/user_profile/user_tabs.html:40 views/users.py:761 msgid "email subscription settings" msgstr "" @@ -6006,25 +5900,26 @@ msgstr "" msgid "moderate this user" msgstr "" +#: skins/default/templates/user_profile/user_tabs.html:36 #: skins/default/templates/user_profile/user_votes.html:4 msgid "votes" msgstr "" #: skins/default/templates/widgets/answer_edit_tips.html:3 -msgid "answer tips" -msgstr "Tips" +msgid "Tips" +msgstr "" #: skins/default/templates/widgets/answer_edit_tips.html:6 -msgid "please make your answer relevant to this community" -msgstr "ask a question interesting to this community" +msgid "ask a question interesting to this community" +msgstr "" #: skins/default/templates/widgets/answer_edit_tips.html:9 msgid "try to give an answer, rather than engage into a discussion" msgstr "" #: skins/default/templates/widgets/answer_edit_tips.html:12 -msgid "please try to provide details" -msgstr "provide enough details" +msgid "provide enough details" +msgstr "" #: skins/default/templates/widgets/answer_edit_tips.html:15 #: skins/default/templates/widgets/question_edit_tips.html:11 @@ -6038,8 +5933,8 @@ msgstr "" #: skins/default/templates/widgets/answer_edit_tips.html:27 #: skins/default/templates/widgets/question_edit_tips.html:22 -msgid "Markdown tips" -msgstr "Markdown basics" +msgid "Markdown basics" +msgstr "" #: skins/default/templates/widgets/answer_edit_tips.html:31 #: skins/default/templates/widgets/question_edit_tips.html:26 @@ -6094,38 +5989,35 @@ msgid "learn more about Markdown" msgstr "" #: skins/default/templates/widgets/ask_button.html:5 -msgid "ask a question" -msgstr "Ask Your Question" +msgid "Ask Your Question" +msgstr "" #: skins/default/templates/widgets/ask_form.html:6 -msgid "login to post question info" -msgstr "" +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." +msgstr "" #: skins/default/templates/widgets/ask_form.html:10 #, python-format msgid "" -"must have valid %(email)s to post, \n" -" see %(email_validation_faq_url)s\n" -" " -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. " +"question will saved as pending meanwhile." +msgstr "" #: skins/default/templates/widgets/ask_form.html:42 -msgid "Login/signup to post your question" -msgstr "Login/Signup to Post" +msgid "Login/Signup to Post" +msgstr "" #: skins/default/templates/widgets/ask_form.html:44 -msgid "Ask your question" -msgstr "Ask Your Question" +msgid "Ask Your Question" +msgstr "" #: skins/default/templates/widgets/contributors.html:3 msgid "Contributors" @@ -6170,17 +6062,9 @@ msgstr "people" msgid "badges" msgstr "" -#: skins/default/templates/widgets/question_edit_tips.html:3 -msgid "question tips" -msgstr "Tips" - #: skins/default/templates/widgets/question_edit_tips.html:5 -msgid "please ask a relevant question" -msgstr "ask a question interesting to this community" - -#: skins/default/templates/widgets/question_edit_tips.html:8 -msgid "please try provide enough details" -msgstr "provide enough details" +msgid "ask a question interesting to this community" +msgstr "" #: skins/default/templates/widgets/question_summary.html:12 msgid "view" @@ -6237,16 +6121,16 @@ msgid "logout" msgstr "sign out" #: skins/default/templates/widgets/user_navigation.html:12 -msgid "login" -msgstr "Hi, there! Please sign in" +msgid "Hi, there! Please sign in" +msgstr "" #: skins/default/templates/widgets/user_navigation.html:15 msgid "settings" msgstr "" #: templatetags/extra_filters_jinja.py:279 -msgid "no items in counter" -msgstr "no" +msgid "no" +msgstr "" #: utils/decorators.py:90 views/commands.py:73 views/commands.py:93 msgid "Oops, apologies - there was some error" @@ -6265,8 +6149,8 @@ msgid "this field is required" msgstr "" #: utils/forms.py:60 -msgid "choose a username" -msgstr "Choose screen name" +msgid "Choose a screen name" +msgstr "" #: utils/forms.py:69 msgid "user name is required" @@ -6297,8 +6181,8 @@ msgid "please use at least some alphabetic characters in the user name" msgstr "" #: utils/forms.py:138 -msgid "your email address" -msgstr "Your email <i>(never shared)</i>" +msgid "Your email <i>(never shared)</i>" +msgstr "" #: utils/forms.py:139 msgid "email address is required" @@ -6313,16 +6197,16 @@ msgid "this email is already used by someone else, please choose another" msgstr "" #: utils/forms.py:169 -msgid "choose password" -msgstr "Password" +msgid "Password" +msgstr "" #: utils/forms.py:170 msgid "password is required" msgstr "" #: utils/forms.py:173 -msgid "retype password" -msgstr "Password <i>(please retype)</i>" +msgid "Password <i>(please retype)</i>" +msgstr "" #: utils/forms.py:174 msgid "please, retype your password" @@ -6371,8 +6255,8 @@ msgid "Sorry, but anonymous users cannot access the inbox" msgstr "" #: views/commands.py:111 -msgid "anonymous users cannot vote" -msgstr "Sorry, anonymous users cannot vote" +msgid "Sorry, anonymous users cannot vote" +msgstr "" #: views/commands.py:127 msgid "Sorry you ran out of votes for today" @@ -6393,10 +6277,10 @@ msgstr "" #: views/commands.py:336 #, python-format -msgid "subscription saved, %(email)s needs validation, see %(details_url)s" -msgstr "" +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>" +msgstr "" #: views/commands.py:343 msgid "email update frequency has been set to daily" @@ -6479,12 +6363,12 @@ msgid "profile - votes" msgstr "" #: views/users.py:693 -msgid "user reputation in the community" -msgstr "user karma" +msgid "user karma" +msgstr "" #: views/users.py:694 -msgid "profile - user reputation" -msgstr "Profile - User's Karma" +msgid "Profile - User's Karma" +msgstr "" #: views/users.py:712 msgid "users favorite questions" @@ -6525,13 +6409,13 @@ msgid "Error uploading file. Please contact the site administrator. Thank you." msgstr "" #: views/writers.py:204 -msgid "Please log in to ask questions" -msgstr "" +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." +msgstr "" #: views/writers.py:469 msgid "Please log in to answer questions" diff --git a/askbot/management/commands/send_email_alerts.py b/askbot/management/commands/send_email_alerts.py index c17c678e..c1959885 100644 --- a/askbot/management/commands/send_email_alerts.py +++ b/askbot/management/commands/send_email_alerts.py @@ -420,9 +420,17 @@ class Command(NoArgsCommand): #todo: send this to special log #print 'have %d updated questions for %s' % (num_q, user.username) - text = ungettext('%(name)s, this is an update message header for %(num)d question', - '%(name)s, this is an update message header for %(num)d questions',num_q) \ - % {'num':num_q, 'name':user.username} + text = ungettext( + '<p>Dear %(name)s,</p><p>The following question has been updated ' + '%(sitename)s</p>', + '<p>Dear %(name)s,</p><p>The following %(num)d questions have been ' + 'updated on %(sitename)s:</p>', + num_q + ) % { + 'num':num_q, + 'name':user.username, + 'sitename': askbot_settings.APP_SHORT_NAME + } text += '<ul>' items_added = 0 @@ -462,12 +470,15 @@ class Command(NoArgsCommand): ) text += _( - 'go to %(email_settings_link)s to change ' - 'frequency of email updates or ' - '%(admin_email)s administrator' + '<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>' ) % { 'email_settings_link': link, - 'admin_email': django_settings.ADMINS[0][1] + 'admin_email': django_settings.ADMINS[0][1], + 'sitename': askbot_settings.APP_SHORT_NAME } if DEBUG_THIS_COMMAND == True: recipient_email = django_settings.ADMINS[0][1] diff --git a/askbot/models/__init__.py b/askbot/models/__init__.py index ee2a6f4a..a3644844 100644 --- a/askbot/models/__init__.py +++ b/askbot/models/__init__.py @@ -19,6 +19,7 @@ from django.core import exceptions as django_exceptions from django_countries.fields import CountryField from askbot import exceptions as askbot_exceptions from askbot import const +from askbot.const.message_keys import get_i18n_message from askbot.conf import settings as askbot_settings from askbot.models.question import Thread from askbot.skins import utils as skin_utils @@ -383,7 +384,9 @@ def user_assert_can_vote_for_post( :param:post can be instance of question or answer """ if self == post.author: - raise django_exceptions.PermissionDenied(_('cannot vote for own posts')) + raise django_exceptions.PermissionDenied( + _('Sorry, you cannot vote for your own posts') + ) blocked_error_message = _( 'Sorry your account appears to be blocked ' + @@ -425,8 +428,7 @@ def user_assert_can_upload_file(request_user): blocked_error_message = _('Sorry, blocked users cannot upload files') suspended_error_message = _('Sorry, suspended users cannot upload files') low_rep_error_message = _( - 'uploading images is limited to users ' - 'with >%(min_rep)s reputation points' + 'sorry, file uploading requires karma >%(min_rep)s', ) % {'min_rep': askbot_settings.MIN_REP_TO_UPLOAD_FILES } _assert_user_can( @@ -442,10 +444,13 @@ def user_assert_can_post_question(self): text that has the reason for the denial """ + blocked_message = get_i18n_message('BLOCKED_USERS_CANNOT_POST') + suspended_message = get_i18n_message('SUSPENDED_USERS_CANNOT_POST') + _assert_user_can( user = self, - blocked_error_message = _('blocked users cannot post'), - suspended_error_message = _('suspended users cannot post'), + blocked_error_message = blocked_message, + suspended_error_message = suspended_message ) @@ -518,12 +523,14 @@ def user_assert_can_post_comment(self, parent_post = None): 'your own posts and answers to your questions' ) % {'min_rep': askbot_settings.MIN_REP_TO_LEAVE_COMMENTS} + blocked_message = get_i18n_message('BLOCKED_USERS_CANNOT_POST') + try: _assert_user_can( user = self, post = parent_post, owner_can = True, - blocked_error_message = _('blocked users cannot post'), + blocked_error_message = blocked_message, suspended_error_message = suspended_error_message, min_rep_setting = askbot_settings.MIN_REP_TO_LEAVE_COMMENTS, low_rep_error_message = low_rep_error_message, @@ -762,16 +769,29 @@ def user_assert_can_flag_offensive(self, post = None): assert(post is not None) - double_flagging_error_message = _('cannot flag message as offensive twice') + double_flagging_error_message = _( + 'You have flagged this question before and ' + 'cannot do it more than once' + ) if self.get_flags_for_post(post).count() > 0: raise askbot_exceptions.DuplicateCommand(double_flagging_error_message) - blocked_error_message = _('blocked users cannot flag posts') + blocked_error_message = _( + 'Sorry, since your account is blocked ' + 'you cannot flag posts as offensive' + ) - suspended_error_message = _('suspended users cannot flag posts') + suspended_error_message = _( + '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.' + ) - low_rep_error_message = _('need > %(min_rep)s points to flag spam') % \ + low_rep_error_message = _( + 'Sorry, to flag posts as offensive a minimum reputation ' + 'of %(min_rep)s is required' + ) % \ {'min_rep': askbot_settings.MIN_REP_TO_FLAG_OFFENSIVE} min_rep_setting = askbot_settings.MIN_REP_TO_FLAG_OFFENSIVE @@ -790,11 +810,12 @@ def user_assert_can_flag_offensive(self, post = None): flag_count_today = self.get_flag_count_posted_today() if flag_count_today >= askbot_settings.MAX_FLAGS_PER_USER_PER_DAY: flags_exceeded_error_message = _( - '%(max_flags_per_day)s exceeded' - ) % { - 'max_flags_per_day': \ - askbot_settings.MAX_FLAGS_PER_USER_PER_DAY - } + 'Sorry, you have exhausted the maximum number of ' + '%(max_flags_per_day)s offensive flags per day.' + ) % { + 'max_flags_per_day': \ + askbot_settings.MAX_FLAGS_PER_USER_PER_DAY + } raise django_exceptions.PermissionDenied(flags_exceeded_error_message) def user_assert_can_remove_flag_offensive(self, post = None): @@ -806,14 +827,19 @@ def user_assert_can_remove_flag_offensive(self, post = None): if self.get_flags_for_post(post).count() < 1: raise django_exceptions.PermissionDenied(non_existing_flagging_error_message) - blocked_error_message = _('blocked users cannot remove flags') + blocked_error_message = _( + 'Sorry, since your account is blocked you cannot remove flags' + ) - suspended_error_message = _('suspended users cannot remove flags') + suspended_error_message = _( + 'Sorry, your account appears to be suspended and you cannot remove flags. ' + 'Please contact the forum administrator to reach a resolution.' + ) min_rep_setting = askbot_settings.MIN_REP_TO_FLAG_OFFENSIVE low_rep_error_message = ungettext( - 'need > %(min_rep)d point to remove flag', - 'need > %(min_rep)d points to remove flag', + 'Sorry, to flag posts a minimum reputation of %(min_rep)d is required', + 'Sorry, to flag posts a minimum reputation of %(min_rep)d is required', min_rep_setting ) % {'min_rep': min_rep_setting} @@ -921,7 +947,9 @@ def user_assert_can_revoke_old_vote(self, vote): """ if (datetime.datetime.now().day - vote.voted_at.day) \ >= askbot_settings.MAX_DAYS_TO_CANCEL_VOTE: - raise django_exceptions.PermissionDenied(_('cannot revoke old vote')) + raise django_exceptions.PermissionDenied( + _('sorry, but older votes cannot be revoked') + ) def user_get_unused_votes_today(self): """returns number of votes that are @@ -989,10 +1017,10 @@ def user_post_anonymous_askbot_content(user, session_key): #maybe add pending posts message? else: if user.is_blocked(): - msg = _('blocked users cannot post') + msg = get_i18n_message('BLOCKED_USERS_CANNOT_POST') user.message_set.create(message = msg) elif user.is_suspended(): - msg = _('suspended users cannot post') + msg = get_i18n_message('SUSPENDED_USERS_CANNOT_POST') user.message_set.create(message = msg) else: for aq in aq_list: diff --git a/askbot/skins/common/templates/authopenid/changeemail.html b/askbot/skins/common/templates/authopenid/changeemail.html index 1316a048..55341013 100644 --- a/askbot/skins/common/templates/authopenid/changeemail.html +++ b/askbot/skins/common/templates/authopenid/changeemail.html @@ -1,21 +1,28 @@ {% extends "one_column_body.html" %} -{% block title %}{% spaceless %}{% trans %}Change email{% endtrans %}{% endspaceless %}{% endblock %} +{% block title %}{% spaceless %}{% trans %}Change Email{% endtrans %}{% endspaceless %}{% endblock %} {% block content %} <!-- changeemail.html action_type={{action_type}}--> {% if action_type=="change" %} <h1> {% if user.email %} - {% trans %}Change email{% endtrans %} + {% trans %}Change Email{% endtrans %} {% else %} {% trans %}Save your email address{% endtrans %} {% endif %} </h1> <p class="message"> {% if user.email %} - {% trans %}change {{email}} info{% endtrans %} + {% trans %}<span class=\"strong big\">Enter your new email into the box below</span> if +you'd like to use another email for <strong>update subscriptions</strong>. +<br>Currently you are using <strong>%(email)s</strong>{% endtrans %} {% else %} - {% trans %}here is why email is required, see {{gravatar_faq_url}}{% endtrans %} - {% endif %} + {% trans %}<span class='strong big'>Please enter your email address in the box below.</span> +Valid email address is required on this Q&A forum. If you like, +you can <strong>receive updates</strong> on interesting questions or entire +forum via email. Also, your email is used to create a unique +<a href='%(gravatar_faq_url)s'><strong>gravatar</strong></a> image for your +account. Email addresses are never shown or otherwise shared with anybody +else.{% endif %} </p> {% if msg %} <p class="error">{{ msg }}</p> @@ -26,14 +33,19 @@ <input type="hidden" name="next" value="{{next}}"/> {% endif %} <div class="form-row-vertical"> - <label for="id_email">{% if user.email %}{% trans %}Your new Email{% endtrans %}{% else %}{% trans %}Your Email{% endtrans %}{% endif %}</label> + <label for="id_email"> + {%- if user.email %}{% trans %}<strong>Your new Email:</strong> +(will <strong>not</strong> be shown to anyone, must be valid){% endtrans -%} + {%- else -%} + {%- trans %}<strong>Your Email</strong> (<i>must be valid, never shown to others</i>){% endtrans -%} + {%- endif %} {% if form.email.errors %} <p class="error">{{form.email.errors|join(", ")}}</p> {% endif %} {{ form.email }} </div> <div class="submit-row"> - <input class="submit" type="submit" name="change_email" value="{% if user.email %}{% trans %}Change email{% endtrans %}{% else %}{% trans %}Save Email{% endtrans %}{% endif %}"> + <input class="submit" type="submit" name="change_email" value="{% if user.email %}{% trans %}Change Email{% endtrans %}{% else %}{% trans %}Save Email{% endtrans %}{% endif %}"> {% if user.email %} <input class="submit" type="submit" name="cancel" value="{% trans %}Cancel{% endtrans %}"> {% endif %} @@ -45,35 +57,54 @@ {% trans %}Validate email{% endtrans %} </div> <p class="message"> - {% trans %}validate {{email}} info or go to {{change_email_url}}{% endtrans %} + {% trans %}<span class=\"strong big\">An email with a validation link has been sent to +%(email)s.</span> Please <strong>follow the emailed link</strong> with your +web browser. Email validation is necessary to help insure the proper use of +email on <span class=\"orange\">Q&A</span>. If you would like to use +<strong>another email</strong>, please <a +href='%(change_email_url)s'><strong>change it again</strong></a>.{% endtrans %} </p> {% elif action_type=="keep" %} <div id="main-bar" class="headNormal"> {% trans %}Email not changed{% endtrans %} </div> <p class="message"> - {% trans %}old {{email}} kept, if you like go to {{change_email_url}}{% endtrans %} + {% trans %}<span class=\"strong big\">Your email address %(email)s has not been changed. +</span> If you decide to change it later - you can always do it by editing +it in your user profile or by using the <a +href='%(change_email_url)s'><strong>previous form</strong></a> again.{% endtrans %} </p> {% elif action_type=="done_novalidate" %} <div id="main-bar" class="headNormal"> {% trans %}Email changed{% endtrans %} </div> <p class="message"> - {% trans %}your current {{email}} can be used for this{% endtrans %} + {% trans %} +<span class='big strong'>Your email address is now set to %(email)s.</span> +Updates on the questions that you like most will be sent to this address. +Email notifications are sent once a day or less frequently - only when there +are any news.{% endtrans %} </p> {% elif action_type=="validation_complete" %} <div id="main-bar" class="headNormal"> {% trans %}Email verified{% endtrans %} </div> <p class="message"> - {% trans %}thanks for verifying email{% endtrans %} + {% trans %}<span class=\"big strong\">Thank you for verifying your email!</span> Now +you can <strong>ask</strong> and <strong>answer</strong> questions. Also if +you find a very interesting question you can <strong>subscribe for the +updates</strong> - then will be notified about changes <strong>once a day</strong> +or less frequently.{% endtrans %} </p> {% elif action_type=="key_not_sent" %} <div id="main-bar" class="headNormal"> - {% trans %}email key not sent{% endtrans %} + {% trans %}Validation email not sent{% endtrans %} </div> <p class="message"> - {% trans %}email key not sent {{email}} change email here {{change_link}}{% endtrans %} + {% trans %}<span class='big strong'>Your current email address %(email)s has been +validated before</span> so the new key was not sent. You can <a +href='%(change_link)s'>change</a> email used for update subscriptions if +necessary.{% endtrans %} </p> {% endif %} {% endblock %} diff --git a/askbot/skins/common/templates/authopenid/complete.html b/askbot/skins/common/templates/authopenid/complete.html index 969a173f..13f7f471 100644 --- a/askbot/skins/common/templates/authopenid/complete.html +++ b/askbot/skins/common/templates/authopenid/complete.html @@ -24,17 +24,42 @@ parameters: <div id="completetxt" > <div class="message"> {% if login_type=='openid' %} - {% trans %}register new {{provider}} account info, see {{gravatar_faq_url}}{% endtrans %} + {% trans %}<p><span class=\"big strong\">You are here for the first time with your +%(provider)s login.</span> Please create your <strong>screen name</strong> +and save your <strong>email</strong> address. Saved email address will let +you <strong>subscribe for the updates</strong> on the most interesting +questions and will be used to create and retrieve your unique avatar image - +<a href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>{% endtrans %} + register new {{provider}} account info, see {{gravatar_faq_url}}{% endtrans %} {% elif login_type=='legacy' %} {% if external_login_name_is_taken %} - {% trans %}{{username}} already exists, choose another name for - {{provider}}. Email is required too, see {{gravatar_faq_url}} + {% trans %}<p><span class='strong big'>Oops... looks like screen name %(username)s is +already used in another account.</span></p><p>Please choose another screen +name to use with your %(provider)s login. Also, a valid email address is +required on the <span class='orange'>Q&A</span> forum. Your email is +used to create a unique <a href='%(gravatar_faq_url)s'><strong>gravatar +</strong></a> image for your account. If you like, you can <strong>receive +updates</strong> on the interesting questions or entire forum by email. +Email addresses are never shown or otherwise shared with anybody else.</p> {% endtrans %} {% else %} - {% trans %}register new external {{provider}} account info, see {{gravatar_faq_url}}{% endtrans %} + {% trans %} +<p><span class=\"big strong\">You are here for the first time with your +%(provider)s login.</span></p><p>You can either keep your <strong>screen +name</strong> the same as your %(provider)s login name or choose some other +nickname.</p><p>Also, please save a valid <strong>email</strong> address. +With the email you can <strong>subscribe for the updates</strong> on the +most interesting questions. Email address is also used to create and +retrieve your unique avatar image - <a +href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>{% endtrans %} {% endif %} {% else %} - {% trans %}register new Facebook connect account info, see {{gravatar_faq_url}}{% endtrans %} + {% trans %}<p><span class=\"big strong\">You are here for the first time with your +Facebook login.</span> Please create your <strong>screen name</strong> and +save your <strong>email</strong> address. Saved email address will let you +<strong>subscribe for the updates</strong> on the most interesting questions +and will be used to create and retrieve your unique avatar image - +<a href='%(gravatar_faq_url)s'><strong>gravatar</strong></a>.</p>{% endtrans %} {% endif %} </div> <p style="display:none">{% trans %}This account already exists, please use another.{% endtrans %}</p> @@ -56,20 +81,28 @@ parameters: {% endif %} {{ openid_register_form.next }} <div class="form-row-vertical"> - <label for="id_username">{% trans %}Screen name label{% endtrans %}</label> + {%- trans %}<strong>Screen Name</strong> (<i>will be shown to others</i>){% endtrans %} {% if openid_register_form.username.errors %} <p class="error">{{ openid_register_form.username.errors|join(", ") }}</p> {% endif %} {{ openid_register_form.username }} </div> <div class="form-row-vertical margin-bottom"> - <label for="id_email">{% trans %}Email address label{% endtrans %}</label> + <label for="id_email"> + {%- trans %}<strong>Email Address</strong> (<i>will <strong>not</strong> be shared with +anyone, must be valid</i>) + {% endtrans -%} + </label> {% if openid_register_form.email.errors %} <p class="error">{{ openid_register_form.email.errors|join(", ") }}</p> {% endif %} {{ openid_register_form.email }} </div> - <p>{% trans %}receive updates motivational blurb{% endtrans %}</p> + <p>{% trans %}<strong>Receive forum updates by email</strong> - this will help our +community grow and become more useful.<br/>By default +<span class='orange'>Q&A</span> forum sends up to <strong>one email digest per +week</strong> - only when there is anything new.<br/>If you like, please +adjust this now or any time later from your user account.{% endtrans %}</p> <div class='simple-subscribe-options'> {{email_feeds_form.subscribe}} {% if email_feeds_form.errors %} diff --git a/askbot/skins/common/templates/authopenid/confirm_email.txt b/askbot/skins/common/templates/authopenid/confirm_email.txt index 1a0f4e63..5cab7c4c 100644 --- a/askbot/skins/common/templates/authopenid/confirm_email.txt +++ b/askbot/skins/common/templates/authopenid/confirm_email.txt @@ -9,4 +9,4 @@ {{signup_url}} {% trans %}Sincerely, -Forum Administrator{% endtrans %} +Q&A Forum Administrator{% endtrans %} diff --git a/askbot/skins/common/templates/authopenid/email_validation.txt b/askbot/skins/common/templates/authopenid/email_validation.txt index 9c5baa8a..2284cac3 100644 --- a/askbot/skins/common/templates/authopenid/email_validation.txt +++ b/askbot/skins/common/templates/authopenid/email_validation.txt @@ -11,4 +11,4 @@ no further action is needed. Just ingore this email, we apologize for any inconvenience{% endtrans %} {% trans %}Sincerely, -Forum Administrator{% endtrans %} +Q&A Forum Administrator{% endtrans %} diff --git a/askbot/skins/common/templates/authopenid/signin.html b/askbot/skins/common/templates/authopenid/signin.html index 30a576cc..f4bf82c9 100644 --- a/askbot/skins/common/templates/authopenid/signin.html +++ b/askbot/skins/common/templates/authopenid/signin.html @@ -103,7 +103,7 @@ </tr>
</table>
<p id="local_login_buttons">
- <input class="submit-b" name="login_with_password" type="submit" value="{% trans %}Login{% endtrans %}" />
+ <input class="submit-b" name="login_with_password" type="submit" value="{% trans %}Sign in{% endtrans %}" />
{% if settings.USE_LDAP_FOR_PASSWORD_LOGIN == False %}
<a class="create-password-account" style="vertical-align:middle" href="{% url user_signup_with_password %}?login_provider=local">{% trans %}Create a password-protected account{% endtrans %}</a>
{% endif %}
@@ -213,33 +213,7 @@ {% endif %}
{% endif %}
{% endblock %}
-
-{% block sidebar %}
- {% if have_buttons %}
- <div class="box">
- <h2>{% trans %}Why use OpenID?{% endtrans %}</h2>
- <ul>
- <li>
- {% trans %}with openid it is easier{% endtrans %}
- </li>
- <li>
- {% trans %}reuse openid{% endtrans %}
- </li>
- <li>
- {% trans %}openid is widely adopted{% endtrans %}
- </li>
- <li>
- {% trans %}openid is supported open standard{% endtrans %}
- </li>
- </ul>
- <p class="info-box-follow-up-links">
- <a href="http://openid.net/what/" target="_blank">{% trans %}Find out more{% endtrans %} ยป</a><br/>
- <a href="http://openid.net/get/" target="_blank">{% trans %}Get OpenID{% endtrans %} ยป</a>
- </p>
- </div>
- {% endif %}
-{% endblock%}
-{%block endjs%}
-{%include "authopenid/providers_javascript.html" %}
-{%endblock%}
+{% block endjs %}
+{% include "authopenid/providers_javascript.html" %}
+{% endblock %}
<!-- end signin.html -->
diff --git a/askbot/skins/common/templates/authopenid/signup_with_password.html b/askbot/skins/common/templates/authopenid/signup_with_password.html index 9911facf..e370b206 100644 --- a/askbot/skins/common/templates/authopenid/signup_with_password.html +++ b/askbot/skins/common/templates/authopenid/signup_with_password.html @@ -23,7 +23,11 @@ <h2>{% trans %}or create a new user name and password here{% endtrans %}</h2> {% else %} <h1>{% trans %}Create login name and password{% endtrans %}</h1> - <p class="message">{% trans %}Traditional signup info{% endtrans %}</p> + <p class="message">{% trans %}<span class='strong big'>If you prefer, create your forum login name and +password here. However</span>, please keep in mind that we also support +<strong>OpenID</strong> login method. With <strong>OpenID</strong> you can +simply reuse your external login (e.g. Gmail or AOL) without ever sharing +your login details with anyone and having to remember yet another password.{% endtrans %} {%endif%} <form action="{% url user_signup_with_password %}" method="post" accept-charset="utf-8">{% csrf_token %} {{form.login_provider}} @@ -44,7 +48,7 @@ <p class="signup_p">{% trans %}Please read and type in the two words below to help us prevent automated account creation.{% endtrans %}</p> {{form.recaptcha}} {% endif %} - <div class="submit-row"><input type="submit" class="submit" value="{% trans %}Create Account{% endtrans %}" /> + <div class="submit-row"><input type="submit" class="submit" value="{% trans %}Signup{% endtrans %}" /> {% if settings.PASSWORD_REGISTER_SHOW_PROVIDER_BUTTONS == False %} <strong>{% trans %}or{% endtrans %} <a href="{{ settings.LOGIN_URL }}">{% trans %}return to OpenID login{% endtrans %}</a></strong> diff --git a/askbot/skins/common/templates/question/answer_controls.html b/askbot/skins/common/templates/question/answer_controls.html index be50d6f4..fd12c856 100644 --- a/askbot/skins/common/templates/question/answer_controls.html +++ b/askbot/skins/common/templates/question/answer_controls.html @@ -4,8 +4,8 @@ <span class="action-link"> <a class="permant-link" href="{{ answer.get_absolute_url(question_post=question) }}" - title="{% trans %}answer permanent link{% endtrans %}"> - {% trans %}permanent link{% endtrans %} + title="{% trans %}permanent link{% endtrans %}"> + {% trans %}link{% endtrans %} </a> </span> {% if request.user.is_authenticated() and diff --git a/askbot/skins/common/templates/widgets/related_tags.html b/askbot/skins/common/templates/widgets/related_tags.html index 6e107976..39873437 100644 --- a/askbot/skins/common/templates/widgets/related_tags.html +++ b/askbot/skins/common/templates/widgets/related_tags.html @@ -1,6 +1,6 @@ {% cache 0 "tags" tags search_tags scope sort query context.page language_code %} <div class="box"> - <h2>{% trans %}Related tags{% endtrans %}</h2> + <h2>{% trans %}Tags{% endtrans %}</h2> {% if tag_list_type == 'list' %} <ul id="related-tags" class="tags"> {% for tag in tags %} diff --git a/askbot/skins/default/templates/ask.html b/askbot/skins/default/templates/ask.html index a36f1d0c..8bec61b7 100644 --- a/askbot/skins/default/templates/ask.html +++ b/askbot/skins/default/templates/ask.html @@ -1,7 +1,7 @@ {% extends "two_column_body.html" %} {% import "macros.html" as macros %} <!-- template ask.html --> -{% block title %}{% spaceless %}{% trans %}Ask a question{% endtrans %}{% endspaceless %}{% endblock %} +{% block title %}{% spaceless %}{% trans %}Ask Your Question{% endtrans %}{% endspaceless %}{% endblock %} {% block forestyle %} <link rel="stylesheet" type="text/css" href="{{"/js/wmd/wmd.css"|media}}" /> {% endblock %} diff --git a/askbot/skins/default/templates/badges.html b/askbot/skins/default/templates/badges.html index 08827da3..62627b05 100644 --- a/askbot/skins/default/templates/badges.html +++ b/askbot/skins/default/templates/badges.html @@ -1,12 +1,13 @@ {% extends "two_column_body.html" %} <!-- template badges.html --> -{% block title %}{% spaceless %}{% trans %}Badges summary{% endtrans %}{% endspaceless %}{% endblock %} +{% block title %}{% spaceless %}{% trans %}Badges{% endtrans %}{% endspaceless %}{% endblock %} {% block content %} <h1 class="section-title">{% trans %}Badges{% endtrans %}</h1> <p> {% trans %}Community gives you awards for your questions, answers and votes.{% endtrans %}<br/> {% trans %}Below is the list of available badges and number -of times each type of badge has been awarded. Give us feedback at {{feedback_faq_url}}. + of times each type of badge has been awarded. Have ideas about fun +badges? Please, give us your <a href='%(feedback_faq_url)s'>feedback</a> {% endtrans %} </p> <div id="medalList"> @@ -37,7 +38,8 @@ of times each type of badge has been awarded. Give us feedback at {{feedback_faq <a style="cursor:default;" title="{% trans %}gold badge: the highest honor and is very rare{% endtrans %}" class="medal"><span class="badge1">●</span> {% trans %}gold{% endtrans %}</a> </p> <p> - {% trans %}gold badge description{% endtrans %} + {% trans %}Gold badge is the highest award in this community. To obtain it have to show +profound knowledge and ability in addition to your active participation.{% endtrans %} </p> <p> <a @@ -46,14 +48,14 @@ of times each type of badge has been awarded. Give us feedback at {{feedback_faq class="medal"><span class="badge2">●</span> {% trans %}silver{% endtrans %}</a> </p> <p> - {% trans %}silver badge description{% endtrans %} + {% trans %}msgid "silver badge: occasionally awarded for the very high quality contributions{% endtrans %} </p> <p> <a style="cursor:default;" title="{% trans %}bronze badge: often given as a special honor{% endtrans %}" class="medal"> <span class="badge3">●</span> {% trans %}bronze{% endtrans %}</a> </p> <p> - {% trans %}bronze badge description{% endtrans %} + {% trans %}bronze badge: often given as a special honor{% endtrans %} </p> </div> {% endblock %} diff --git a/askbot/skins/default/templates/faq_static.html b/askbot/skins/default/templates/faq_static.html index b676f793..2b81006f 100644 --- a/askbot/skins/default/templates/faq_static.html +++ b/askbot/skins/default/templates/faq_static.html @@ -5,20 +5,20 @@ <h1>{% trans %}Frequently Asked Questions {% endtrans %}({% trans %}FAQ{% endtrans %})</h1> <h2 class="first">{% trans %}What kinds of questions can I ask here?{% endtrans %}</h2> <p>{% trans %}Most importanly - questions should be <strong>relevant</strong> to this community.{% endtrans %} -{% trans %}Before asking the question - please make sure to use search to see whether your question has alredy been answered.{% endtrans %} +{% trans %}Before you ask - please make sure to search for a similar question. You can search questions by their title or tags.{% endtrans %} </p> -<h2>{% trans %}What questions should I avoid asking?{% endtrans %}</h2> +<h2>{% trans %}What kinds of questions should be avoided?{% endtrans %}</h2> <p>{% trans %}Please avoid asking questions that are not relevant to this community, too subjective and argumentative.{% endtrans %} </p> <h2>{% trans %}What should I avoid in my answers?{% endtrans %}</h2> -<p>{{ settings.APP_TITLE }} {% trans %}is a Q&A site, not a discussion group. Therefore - please avoid having discussions in your answers, comment facility allows some space for brief discussions.{% endtrans %}</p> +<p>{{ settings.APP_TITLE }} {% trans %}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.{% endtrans %}</p> <h2>{% trans %}Who moderates this community?{% endtrans %}</h2> <p>{% trans %}The short answer is: <strong>you</strong>.{% endtrans %} {% trans %}This website is moderated by the users.{% endtrans %} -{% trans %}The reputation system allows users earn the authorization to perform a variety of moderation tasks.{% endtrans %} +{% trans %}Karma system allows users to earn rights to perform a variety of moderation tasks{% endtrans %} </p> -<h2>{% trans %}How does reputation system work?{% endtrans %}</h2> -<p>{% trans %}Rep system summary{% endtrans %}</p> +<h2>{% trans %}How does karma system work?{% endtrans %}</h2> +<p>{% trans %}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.{% endtrans %}</p> <p>{% trans MAX_REP_GAIN_PER_USER_PER_DAY=settings.MAX_REP_GAIN_PER_USER_PER_DAY, REP_GAIN_FOR_RECEIVING_UPVOTE=settings.REP_GAIN_FOR_RECEIVING_UPVOTE, REP_LOSS_FOR_RECEIVING_DOWNVOTE=settings.REP_LOSS_FOR_RECEIVING_DOWNVOTE|absolute_value %}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}}</strong> points, each vote against will subtract <strong>{{REP_LOSS_FOR_RECEIVING_DOWNVOTE}}</strong> points. There is a limit of <strong>{{MAX_REP_GAIN_PER_USER_PER_DAY}}</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.{% endtrans %} </p> @@ -65,8 +65,9 @@ <td>{% trans %}delete any comment{% endtrans %}</td> </tr> </table> -<a id='gravatar'></a><h2>{% trans %}what is gravatar{% endtrans %}</h2> -{% trans %}gravatar faq info{% endtrans %} +<a id='gravatar'></a> +<h2>{% trans %}How to change my picture (gravatar) and what is gravatar?{% endtrans %}</h2> +{% trans %}<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). Default image that looks like a kitchen tile is generated automatically.</p>{% endtrans %} <h2>{% trans %}To register, do I need to create new password?{% endtrans %}</h2> <p>{% trans %}No, you don't have to. You can login through any service that supports OpenID, e.g. Google, Yahoo, AOL, etc."{% endtrans %} <strong><a href="{{ settings.LOGIN_URL }}">{% trans %}"Login now!"{% endtrans %}</a> ยป</strong> @@ -76,7 +77,7 @@ {% trans %}If this approach is not for you, we respect your choice.{% endtrans %} </p> <h2>{% trans %}Still have questions?{% endtrans %}</h2> -<p>{% trans %}Please ask your question at {{ask_question_url}}, help make our community better!{% endtrans %} +<p>{% trans %}Please <a href='%(ask_question_url)s'>ask</a> your question, help make our community better!{% endtrans %} </p> </div> <script type="text/javascript"> diff --git a/askbot/skins/default/templates/macros.html b/askbot/skins/default/templates/macros.html index af0826ab..93eae41b 100644 --- a/askbot/skins/default/templates/macros.html +++ b/askbot/skins/default/templates/macros.html @@ -255,7 +255,7 @@ for the purposes of the AJAX comment editor #} {% set remaining_comments = post.comment_count - max_comments %} <a class="button"> {% if can_post %} - {% trans %}add comment{% endtrans %} / + {% trans %}post a comment{% endtrans %} / {% trans counter=remaining_comments %}see <strong>{{counter}}</strong> more{% pluralize %}see <strong>{{counter}}</strong> more{% endtrans %} {% else %} {% trans counter=remaining_comments %}see <strong>{{counter}}</strong> more comment{% pluralize %}see <strong>{{counter}}</strong> more comments @@ -263,7 +263,7 @@ for the purposes of the AJAX comment editor #} {% endif %} </a> {% elif can_post %} - <a class="button">{% trans %}add comment{% endtrans %}</a> + <a class="button">{% trans %}post a comment{% endtrans %}</a> {% endif %} {%- endmacro -%} @@ -546,14 +546,14 @@ answer {% if answer.accepted() %}accepted-answer{% endif %} {% if answer.author_ {% if num == p.page and p.pages != 1%} <span class="curr" title="{% trans %}current page{% endtrans %}">{{ num }}</span> {% else %} - <span class="page"><a href="{{p.base_url}}page={{ num }}{{ anchor }}" title="{% trans %}page number {{num}}{% endtrans %}">{{ num }}</a></span> + <span class="page"><a href="{{p.base_url}}page={{ num }}{{ anchor }}" title="{% trans %}page {{num}}{% endtrans %}">{{ num }}</a></span> {% endif %} {% endfor %} {% if not p.in_trailing_range %} ... {% for num in p.pages_outside_leading_range|reverse %} - <span class="page"><a href="{{p.base_url}}page={{ num }}{{ anchor }}" title="{% trans %}page number {{ num }}{% endtrans %}">{{ num }}</a></span> + <span class="page"><a href="{{p.base_url}}page={{ num }}{{ anchor }}" title="{% trans %}page {{ num }}{% endtrans %}">{{ num }}</a></span> {% endfor %} {% endif %} {% if p.has_next %} @@ -585,14 +585,14 @@ answer {% if answer.accepted() %}accepted-answer{% endif %} {% if answer.author_ {% if num == p.page and p.pages != 1%} <span class="curr" title="{% trans %}current page{% endtrans %}">{{ num }}</span> {% else %} - <span class="page"><a href="{{ search_state.change_page(num).full_url() }}" title="{% trans %}page number {{num}}{% endtrans %}">{{ num }}</a></span> + <span class="page"><a href="{{ search_state.change_page(num).full_url() }}" title="{% trans %}page {{num}}{% endtrans %}">{{ num }}</a></span> {% endif %} {% endfor %} {% if not p.in_trailing_range %} ... {% for num in p.pages_outside_leading_range|reverse %} - <span class="page"><a href="{{ search_state.change_page(num).full_url() }}" title="{% trans %}page number {{ num }}{% endtrans %}">{{ num }}</a></span> + <span class="page"><a href="{{ search_state.change_page(num).full_url() }}" title="{% trans %}page {{ num }}{% endtrans %}">{{ num }}</a></span> {% endfor %} {% endif %} {% if p.has_next %} diff --git a/askbot/skins/default/templates/question/answer_tab_bar.html b/askbot/skins/default/templates/question/answer_tab_bar.html index 0675a834..632c0cf2 100644 --- a/askbot/skins/default/templates/question/answer_tab_bar.html +++ b/askbot/skins/default/templates/question/answer_tab_bar.html @@ -12,12 +12,12 @@ </span> <a id="oldest" href="{{ question.get_absolute_url() }}?sort=oldest#sort-top" title="{% trans %}oldest answers will be shown first{% endtrans %}" - ><span>{% trans %}oldest answers{% endtrans %}</span></a> + ><span>{% trans %}oldest{% endtrans %}</span></a> <a id="latest" href="{{ question.get_absolute_url() }}?sort=latest#sort-top" title="{% trans %}newest answers will be shown first{% endtrans %}" - ><span>{% trans %}newest answers{% endtrans %}</span></a> + ><span>{% trans %}newest{% endtrans %}</span></a> <a id="votes" href="{{ question.get_absolute_url() }}?sort=votes#sort-top" title="{% trans %}most voted answers will be shown first{% endtrans %}" - ><span>{% trans %}popular answers{% endtrans %}</span></a> + ><span>{% trans %}most voted{% endtrans %}</span></a> </div> </div> diff --git a/askbot/skins/default/templates/question/javascript.html b/askbot/skins/default/templates/question/javascript.html index a5a53e39..8ad3f09c 100644 --- a/askbot/skins/default/templates/question/javascript.html +++ b/askbot/skins/default/templates/question/javascript.html @@ -17,7 +17,7 @@ askbot['urls']['swap_question_with_answer'] = '{% url swap_question_with_answer %}'; askbot['urls']['upvote_comment'] = '{% url upvote_comment %}'; askbot['urls']['delete_post'] = '{% url delete_post %}'; - askbot['messages']['addComment'] = '{% trans %}add comment{% endtrans %}'; + askbot['messages']['addComment'] = '{% trans %}post a comment{% endtrans %}'; {% if settings.SAVE_COMMENT_ON_ENTER %} askbot['settings']['saveCommentOnEnter'] = true; {% else %} diff --git a/askbot/skins/default/templates/question/new_answer_form.html b/askbot/skins/default/templates/question/new_answer_form.html index a2c43f5a..b2901e2a 100644 --- a/askbot/skins/default/templates/question/new_answer_form.html +++ b/askbot/skins/default/templates/question/new_answer_form.html @@ -29,25 +29,25 @@ {% endspaceless %} </div> {% if request.user.is_anonymous() %} - <div class="message">{% trans %}you can answer anonymously and then login{% endtrans %}</div> + <div class="message">{% trans %}<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)!{% endtrans %}</div> {% else %} <p class="message"> {% if request.user==question.author %} - {% trans %}answer your own question only to give an answer{% endtrans %} + {% trans %}<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)!{% endtrans %} {% else %} - {% trans %}please only give an answer, no discussions{% endtrans %} + {% trans %}<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!{% endtrans %} {% endif %} </p> {% endif %} {{ macros.edit_post(answer) }} <input type="submit" {% if user.is_anonymous() %} - value="{% trans %}Login/Signup to Post Your Answer{% endtrans %}" + value="{% trans %}Login/Signup to Post{% endtrans %}" {% else %} {% if user == question.author %} value="{% trans %}Answer Your Own Question{% endtrans %}" {% else %} - value="{% trans %}Answer the question{% endtrans %}" + value="{% trans %}Post Your Answer{% endtrans %}" {% endif %} {% endif %} class="submit after-editor" style="float:left"/> diff --git a/askbot/skins/default/templates/question/sidebar.html b/askbot/skins/default/templates/question/sidebar.html index 08c043a6..30a6990c 100644 --- a/askbot/skins/default/templates/question/sidebar.html +++ b/askbot/skins/default/templates/question/sidebar.html @@ -43,13 +43,13 @@ <div class="clearfix"></div> <h2>{% trans %}Stats{% endtrans %}</h2> <p> - {% trans %}question asked{% endtrans %}: <strong title="{{ question.added_at }}">{{question.added_at|diff_date}}</strong> + {% trans %}Asked{% endtrans %}: <strong title="{{ question.added_at }}">{{question.added_at|diff_date}}</strong> </p> <p> - {% trans %}question was seen{% endtrans %}: <strong>{{ thread.view_count|intcomma }} {% trans %}times{% endtrans %}</strong> + {% trans %}Seen{% endtrans %}: <strong>{{ thread.view_count|intcomma }} {% trans %}times{% endtrans %}</strong> </p> <p> - {% trans %}last updated{% endtrans %}: <strong title="{{ thread.last_activity_at }}">{{thread.last_activity_at|diff_date}}</strong> + {% trans %}Last updated{% endtrans %}: <strong title="{{ thread.last_activity_at }}">{{thread.last_activity_at|diff_date}}</strong> </p> </div> {% endif %} diff --git a/askbot/skins/default/templates/question/subscribe_by_email_prompt.html b/askbot/skins/default/templates/question/subscribe_by_email_prompt.html index f6520fc3..a9158143 100644 --- a/askbot/skins/default/templates/question/subscribe_by_email_prompt.html +++ b/askbot/skins/default/templates/question/subscribe_by_email_prompt.html @@ -2,22 +2,13 @@ <p> {{ answer.email_notify }} <label for="question-subscribe-updates"> - {% set email_feed_frequency = request.user.get_followed_question_alert_frequency() %} - {% if email_feed_frequency =='n' %} - {% trans %}Notify me once a day when there are any new answers{% endtrans %} - {% elif email_feed_frequency =='d' %} - {% trans %}Notify me once a day when there are any new answers{% endtrans %} - {% elif email_feed_frequency =='w' %} - {% trans %}Notify me weekly when there are any new answers{% endtrans %} - {% elif email_feed_frequency =='i' %} - {% trans %}Notify me immediately when there are any new answers{% endtrans %} - {% endif %} + {% trans %}Email me when there are any new answers{% endtrans %} </label> - {% trans profile_url=request.user.get_profile_url() %}You can always adjust frequency of email updates from your {{profile_url}}{% endtrans %} </p> {% else %} <p> {{ answer.email_notify }} <label>{% trans %}once you sign in you will be able to subscribe for any updates here{% endtrans %}</label> + <label>{% trans %}<span class='strong'>Here</span> (once you log in) you will be able to sign up for the periodic email updates about this question.{% endtrans %}</label> </p> {% endif %} diff --git a/askbot/skins/default/templates/question_retag.html b/askbot/skins/default/templates/question_retag.html index d15813e5..c42b42f8 100644 --- a/askbot/skins/default/templates/question_retag.html +++ b/askbot/skins/default/templates/question_retag.html @@ -1,8 +1,8 @@ {% extends "two_column_body.html" %} <!-- question_retag.html --> -{% block title %}{% spaceless %}{% trans %}Change tags{% endtrans %}{% endspaceless %}{% endblock %} +{% block title %}{% spaceless %}{% trans %}Retag question{% endtrans %}{% endspaceless %}{% endblock %} {% block content %} -<h1>{% trans %}Change tags{% endtrans %} [<a href="{{ question.get_absolute_url() }}">{% trans %}back{% endtrans %}</a>]</h1> +<h1>{% trans %}Retag question{% endtrans %} [<a href="{{ question.get_absolute_url() }}">{% trans %}back{% endtrans %}</a>]</h1> <form id="fmretag" action="{% url retag_question question.id %}" method="post" >{% csrf_token %} <h2> {{ question.thread.get_title()|escape }} diff --git a/askbot/skins/default/templates/tags.html b/askbot/skins/default/templates/tags.html index 4894bdb1..0f0c1fc6 100644 --- a/askbot/skins/default/templates/tags.html +++ b/askbot/skins/default/templates/tags.html @@ -1,7 +1,7 @@ {% extends "two_column_body.html" %} {% import "macros.html" as macros %} <!-- tags.html --> -{% block title %}{% spaceless %}{% trans %}Tag list{% endtrans %}{% endspaceless %}{% endblock %} +{% block title %}{% spaceless %}{% trans %}Tags{% endtrans %}{% endspaceless %}{% endblock %} {% block content %} <!-- Tabs --> {% if stag %} diff --git a/askbot/skins/default/templates/user_profile/user_email_subscriptions.html b/askbot/skins/default/templates/user_profile/user_email_subscriptions.html index e6a18dd3..f44e8a1e 100644 --- a/askbot/skins/default/templates/user_profile/user_email_subscriptions.html +++ b/askbot/skins/default/templates/user_profile/user_email_subscriptions.html @@ -5,7 +5,8 @@ {% endblock %} {% block usercontent %} <h2>{% trans %}Email subscription settings{% endtrans %}</h2> - <p class="message">{% trans %}email subscription settings info{% endtrans %}</p> + <p class="message"> +{% trans %}<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.{% endtrans %}</p> <div> {% if action_status %} <p class="action-status"><span>{{action_status}}</span></p> @@ -19,7 +20,7 @@ </table> <div class="submit-row text-align-right"> <input type="submit" class="submit" name="save" value="{% trans %}Update{% endtrans %}"/> - <input type="submit" class="submit" name="stop_email" value="{% trans %}Stop sending email{% endtrans %}"/> + <input type="submit" class="submit" name="stop_email" value="{% trans %}Stop Email{% endtrans %}"/> </div> </form> </div> diff --git a/askbot/skins/default/templates/user_profile/user_info.html b/askbot/skins/default/templates/user_profile/user_info.html index 23218df5..6d286c0a 100644 --- a/askbot/skins/default/templates/user_profile/user_info.html +++ b/askbot/skins/default/templates/user_profile/user_info.html @@ -22,7 +22,7 @@ {% endif %} </div> <div class="scoreNumber">{{view_user.reputation|intcomma}}</div> - <p><b style="color:#777;">{% trans %}reputation{% endtrans %}</b></p> + <p><b style="color:#777;">{% trans %}karma{% endtrans %}</b></p> {% if user_follow_feature_on %} {{ macros.follow_user_toggle(visitor = request.user, subject = view_user) }} {% endif %} @@ -55,7 +55,7 @@ </tr> {% endif %} <tr> - <td>{% trans %}member for{% endtrans %}</td> + <td>{% trans %}member since{% endtrans %}</td> <td><strong>{{ view_user.date_joined|diff_date }}</strong></td> </tr> {% if view_user.last_seen %} @@ -66,7 +66,7 @@ {% endif %} {% if view_user.website %} <tr> - <td>{% trans %}user website{% endtrans %}</td> + <td>{% trans %}website{% endtrans %}</td> <td>{{ macros.user_website_link(view_user, max_display_length = 30) }}</td> </tr> {% endif %} diff --git a/askbot/skins/default/templates/user_profile/user_tabs.html b/askbot/skins/default/templates/user_profile/user_tabs.html index 1468a19a..e6aead31 100644 --- a/askbot/skins/default/templates/user_profile/user_tabs.html +++ b/askbot/skins/default/templates/user_profile/user_tabs.html @@ -18,22 +18,22 @@ ><span>{% trans %}network{% endtrans %}</span></a> {% endif %} <a id="reputation" {% if tab_name=="reputation" %}class="on"{% endif %} - title="{% trans %}graph of user reputation{% endtrans %}" + title="{% trans %}Graph of user karma{% endtrans %}" href="{% url user_profile view_user.id, view_user.username|slugify %}?sort=reputation" - ><span>{% trans %}reputation history{% endtrans %}</span></a> + ><span>{% trans %}karma{% endtrans %}</span></a> <a id="favorites" {% if tab_name=="favorites" %}class="on"{% endif %} title="{% trans %}questions that user is following{% endtrans %}" href="{% url user_profile view_user.id, view_user.username|slugify %}?sort=favorites" ><span>{% trans %}followed questions{% endtrans %}</span></a> <a id="recent" {% if tab_name=="recent" %}class="on"{% endif %} - title="{% trans %}recent activity{% endtrans %}" + title="{% trans %}activity{% endtrans %}" href="{% url user_profile view_user.id, view_user.username|slugify %}?sort=recent" ><span>{% trans %}activity{% endtrans %}</span></a> {% if request.user == view_user or request.user|can_moderate_user(view_user) %} <a id="votes" {% if tab_name=="votes" %}class="on"{% endif %} title="{% trans %}user vote record{% endtrans %}" href="{% url user_profile view_user.id, view_user.username|slugify %}?sort=votes" - ><span>{% trans %}casted votes{% endtrans %}</span></a> + ><span>{% trans %}votes{% endtrans %}</span></a> {% endif %} {% if request.user == view_user or request.user|can_moderate_user(view_user) %} <a id="email_subscriptions" {% if tab_name=="email_subscriptions" %}class="on"{% endif %} diff --git a/askbot/skins/default/templates/users.html b/askbot/skins/default/templates/users.html index 0502a6e5..f2225772 100644 --- a/askbot/skins/default/templates/users.html +++ b/askbot/skins/default/templates/users.html @@ -12,7 +12,7 @@ href="{% url users %}?sort=reputation" {% if tab_id == 'reputation' %}class="on"{% endif %} title="{% trans %}see people with the highest reputation{% endtrans %}" - ><span>{% trans %}reputation{% endtrans %}</span></a> + ><span>{% trans %}karma{% endtrans %}</span></a> <a id="sort_newest" href="{% url users %}?sort=newest" diff --git a/askbot/skins/default/templates/widgets/answer_edit_tips.html b/askbot/skins/default/templates/widgets/answer_edit_tips.html index 9cf0606e..079ad6f4 100644 --- a/askbot/skins/default/templates/widgets/answer_edit_tips.html +++ b/askbot/skins/default/templates/widgets/answer_edit_tips.html @@ -1,15 +1,15 @@ <!-- template answer_edit_tips.html --> <div class="box"> - <h2>{% trans %}answer tips{% endtrans %}</h2> + <h2>{% trans %}Tips{% endtrans %}</h2> <div id="tips"> <ul > - <li> <b>{% trans %}please make your answer relevant to this community{% endtrans %}</b> + <li> <b>{% trans %}ask a question interesting to this community{% endtrans %}</b> </li> <li> {% trans %}try to give an answer, rather than engage into a discussion{% endtrans %} </li> <li> - {% trans %}please try to provide details{% endtrans %} + {% trans %}provide enough details{% endtrans %} </li> <li> {% trans %}be clear and concise{% endtrans %} @@ -24,7 +24,7 @@ </div> <div class="box"> - <h2>{% trans %}Markdown tips{% endtrans %}</h2> + <h2>{% trans %}Markdown basics{% endtrans %}</h2> <ul> {% if settings.MARKUP_CODE_FRIENDLY or settings.ENABLE_MATHJAX %} <li> diff --git a/askbot/skins/default/templates/widgets/ask_button.html b/askbot/skins/default/templates/widgets/ask_button.html index 0eb9243e..31448b73 100644 --- a/askbot/skins/default/templates/widgets/ask_button.html +++ b/askbot/skins/default/templates/widgets/ask_button.html @@ -2,5 +2,5 @@ {% if not search_state %} {# get empty SearchState() if there's none #} {% set search_state=search_state|get_empty_search_state %} {% endif %} - <a id="askButton" href="{{ search_state.full_ask_url() }}">{% trans %}ask a question{% endtrans %}</a> + <a id="askButton" href="{{ search_state.full_ask_url() }}">{% trans %}Ask Your Question{% endtrans %}</a> {% endif %} diff --git a/askbot/skins/default/templates/widgets/ask_form.html b/askbot/skins/default/templates/widgets/ask_form.html index 17dc89f5..b8a5ce2c 100644 --- a/askbot/skins/default/templates/widgets/ask_form.html +++ b/askbot/skins/default/templates/widgets/ask_form.html @@ -4,12 +4,11 @@ <div id="askFormBar"> {% if not request.user.is_authenticated() %} <p>{% trans %}login to post question info{% endtrans %}</p> +<p>{% trans %}<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.{% endtrans %}</p> {% else %} {% if settings.EMAIL_VALIDATION %} {% if not request.user.email_isvalid %} - {% trans email=request.user.email %}must have valid {{email}} to post, - see {{email_validation_faq_url}} - {% endtrans %} + {% trans email=request.user.email %}<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.{% endtrans %} {% endif %} {% endif %} {% endif %} @@ -39,9 +38,9 @@ {% endif %} </div> {% if not request.user.is_authenticated() %} - <input type="submit" name="post_anon" value="{% trans %}Login/signup to post your question{% endtrans %}" class="submit" /> + <input type="submit" name="post_anon" value="{% trans %}Login/Signup to Post{% endtrans %}" class="submit" /> {% else %} - <input type="submit" name="post" value="{% trans %}Ask your question{% endtrans %}" class="submit" /> + <input type="submit" name="post" value="{% trans %}Ask Your Question{% endtrans %}" class="submit" /> {% endif %} <div class="clean"></div> </form> diff --git a/askbot/skins/default/templates/widgets/question_edit_tips.html b/askbot/skins/default/templates/widgets/question_edit_tips.html index 1270687f..842aa491 100644 --- a/askbot/skins/default/templates/widgets/question_edit_tips.html +++ b/askbot/skins/default/templates/widgets/question_edit_tips.html @@ -1,11 +1,11 @@ <!-- question_edit_tips.html --> <div id ="tips" class="box"> - <h2>{% trans %}question tips{% endtrans %}</h2> + <h2>{% trans %}Tips{% endtrans %}</h2> <ul> - <li> <b>{% trans %}please ask a relevant question{% endtrans %}</b> + <li> <b>{% trans %}ask a question interesting to this community{% endtrans %}</b> </li> <li> - {% trans %}please try provide enough details{% endtrans %} + {% trans %}provide enough details{% endtrans %} </li> <li> {% trans %}be clear and concise{% endtrans %} @@ -19,7 +19,7 @@ </div> <div id="markdownHelp"class="box"> - <h2>{% trans %}Markdown tips{% endtrans %}</h2> + <h2>{% trans %}Markdown basics{% endtrans %}</h2> <ul> {% if settings.MARKDUP_CODE_FRIENDLY or settings.ENABLE_MATHJAX %} <li> diff --git a/askbot/skins/default/templates/widgets/user_navigation.html b/askbot/skins/default/templates/widgets/user_navigation.html index 8d6dc330..e79a482e 100644 --- a/askbot/skins/default/templates/widgets/user_navigation.html +++ b/askbot/skins/default/templates/widgets/user_navigation.html @@ -6,10 +6,10 @@ ({{ macros.user_long_score_and_badge_summary(user) }}) </span> {% if settings.USE_ASKBOT_LOGIN_SYSTEM %} - <a href="{{ settings.LOGOUT_URL }}?next={{ settings.LOGOUT_REDIRECT_URL }}">{% trans %}logout{% endtrans %}</a> + <a href="{{ settings.LOGOUT_URL }}?next={{ settings.LOGOUT_REDIRECT_URL }}">{% trans %}sign out{% endtrans %}</a> {% endif %} {% elif settings.USE_ASKBOT_LOGIN_SYSTEM %} - <a href="{{ settings.LOGIN_URL }}?next={{request.path|clean_login_url}}">{% trans %}login{% endtrans %}</a> + <a href="{{ settings.LOGIN_URL }}?next={{request.path|clean_login_url}}">{% trans %}Hi, there! Please sign in{% endtrans %}</a> {% endif %} {% if request.user.is_authenticated() and request.user.is_administrator() %} <a href="{% url site_settings %}">{% trans %}settings{% endtrans %}</a> diff --git a/askbot/templatetags/extra_filters_jinja.py b/askbot/templatetags/extra_filters_jinja.py index b7fbc5f0..8083657d 100644 --- a/askbot/templatetags/extra_filters_jinja.py +++ b/askbot/templatetags/extra_filters_jinja.py @@ -276,7 +276,7 @@ register.filter('can_see_offensive_flags', can_see_offensive_flags) @register.filter def humanize_counter(number): if number == 0: - return _('no items in counter') + return _('no') elif number >= 1000: number = number/1000 s = '%.1f' % number diff --git a/askbot/utils/forms.py b/askbot/utils/forms.py index 536d06b5..b8ed253b 100644 --- a/askbot/utils/forms.py +++ b/askbot/utils/forms.py @@ -57,7 +57,7 @@ class UserNameField(StrippedNonEmptyCharField): db_field='username', must_exist=False, skip_clean=False, - label=_('choose a username'), + label=_('Choose a screen name'), **kw ): self.must_exist = must_exist @@ -135,7 +135,7 @@ class UserEmailField(forms.EmailField): def __init__(self,skip_clean=False,**kw): self.skip_clean = skip_clean super(UserEmailField,self).__init__(widget=forms.TextInput(attrs=dict(login_form_widget_attrs, - maxlength=200)), label=mark_safe(_('your email address')), + maxlength=200)), label=mark_safe(_('Your email <i>(never shared)</i>')), error_messages={'required':_('email address is required'), 'invalid':_('please enter a valid email address'), 'taken':_('this email is already used by someone else, please choose another'), @@ -166,11 +166,11 @@ class UserEmailField(forms.EmailField): class SetPasswordForm(forms.Form): password1 = forms.CharField(widget=forms.PasswordInput(attrs=login_form_widget_attrs), - label=_('choose password'), + label=_('Password'), error_messages={'required':_('password is required')}, ) password2 = forms.CharField(widget=forms.PasswordInput(attrs=login_form_widget_attrs), - label=mark_safe(_('retype password')), + label=mark_safe(_('Password <i>(please retype)</i>')), error_messages={'required':_('please, retype your password'), 'nomatch':_('sorry, entered passwords did not match, please try again')}, ) diff --git a/askbot/views/commands.py b/askbot/views/commands.py index b95143b0..a6de376b 100644 --- a/askbot/views/commands.py +++ b/askbot/views/commands.py @@ -108,7 +108,9 @@ def process_vote(user = None, vote_direction = None, post = None): right now they are kind of cryptic - "status", "count" """ if user.is_anonymous(): - raise exceptions.PermissionDenied(_('anonymous users cannot vote')) + raise exceptions.PermissionDenied(_( + 'Sorry, anonymous users cannot vote' + )) user.assert_can_vote_for_post(post = post, direction = vote_direction) vote = user.get_old_vote_for_post(post) @@ -333,8 +335,11 @@ def vote(request, id): and user.email_isvalid == False: response_data['message'] = \ - _('subscription saved, %(email)s needs validation, see %(details_url)s') \ - % {'email':user.email,'details_url':reverse('faq') + '#validate'} + _( + 'Your subscription is saved, but email address ' + '%(email)s needs to be validated, please see ' + '<a href="%(details_url)s">more details here</a>' + ) % {'email':user.email,'details_url':reverse('faq') + '#validate'} subscribed = user.subscribe_for_followed_question_alerts() if subscribed: diff --git a/askbot/views/users.py b/askbot/views/users.py index b38a54c8..154df7d8 100644 --- a/askbot/views/users.py +++ b/askbot/views/users.py @@ -127,7 +127,7 @@ def user_moderate(request, subject, context): """ moderator = request.user - if not moderator.can_moderate_user(subject): + if moderator.is_authenticated() and not moderator.can_moderate_user(subject): raise Http404 user_rep_changed = False @@ -690,8 +690,8 @@ def user_reputation(request, user, context): 'active_tab':'users', 'page_class': 'user-profile-page', 'tab_name': 'reputation', - 'tab_description': _('user reputation in the community'), - 'page_title': _('profile - user reputation'), + 'tab_description': _('user karma'), + 'page_title': _("Profile - User's Karma"), 'reputation': reputes, 'reps': reps } diff --git a/askbot/views/writers.py b/askbot/views/writers.py index 7ebb1991..4c435eea 100644 --- a/askbot/views/writers.py +++ b/askbot/views/writers.py @@ -201,7 +201,13 @@ def import_data(request): #@login_required #actually you can post anonymously, but then must register @csrf.csrf_protect -@decorators.check_authorization_to_post(_('Please log in to ask questions')) +@decorators.check_authorization_to_post(_( + "<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." +)) @decorators.check_spam('text') def ask(request):#view used to ask a new question """a view to ask a new question |