summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--MANIFEST.in1
-rw-r--r--askbot/__init__.py32
-rw-r--r--askbot/conf/__init__.py3
-rw-r--r--askbot/conf/email.py12
-rw-r--r--askbot/conf/forum_data_rules.py16
-rw-r--r--askbot/conf/login_providers.py1
-rw-r--r--askbot/conf/user_settings.py13
-rw-r--r--askbot/const/__init__.py3
-rw-r--r--askbot/deps/django_authopenid/backends.py4
-rw-r--r--askbot/deps/django_authopenid/forms.py6
-rw-r--r--askbot/deps/django_authopenid/util.py57
-rw-r--r--askbot/deps/django_authopenid/views.py30
-rw-r--r--askbot/doc/source/contributors.rst3
-rw-r--r--askbot/doc/source/footnotes.rst70
-rw-r--r--askbot/doc/source/index.rst3
-rw-r--r--askbot/doc/source/optional-modules.rst51
-rw-r--r--askbot/locale/fr/LC_MESSAGES/django.mobin92637 -> 92933 bytes
-rw-r--r--askbot/locale/fr/LC_MESSAGES/django.po3953
-rw-r--r--askbot/locale/ru/LC_MESSAGES/django.po4177
-rw-r--r--askbot/management/__init__.py1
-rw-r--r--askbot/management/commands/fix_inbox_counts.py31
-rw-r--r--askbot/management/commands/initialize_ldap_logins.py68
-rw-r--r--askbot/management/commands/send_unanswered_question_reminders.py31
-rw-r--r--askbot/middleware/view_log.py9
-rw-r--r--askbot/migrations/0004_install_full_text_indexes_for_mysql.py42
-rw-r--r--askbot/migrations/0022_init_postgresql_full_text_search.py3
-rw-r--r--askbot/models/__init__.py53
-rw-r--r--askbot/models/meta.py16
-rw-r--r--askbot/models/question.py8
-rw-r--r--askbot/models/signals.py2
-rw-r--r--askbot/models/user.py3
-rw-r--r--askbot/search/state_manager.py1
-rw-r--r--askbot/setup_templates/settings.py1
-rw-r--r--askbot/skins/default/media/js/live_search.js1
-rwxr-xr-xaskbot/skins/default/media/style/style.css16
-rw-r--r--askbot/skins/default/templates/answer_edit.html32
-rw-r--r--askbot/skins/default/templates/authopenid/macros.html6
-rw-r--r--askbot/skins/default/templates/authopenid/signin.html62
-rw-r--r--askbot/skins/default/templates/blocks/ask_form.html70
-rw-r--r--askbot/skins/default/templates/question.html536
-rw-r--r--askbot/skins/default/templates/question_retag.html36
-rw-r--r--askbot/skins/default/templates/user_profile/user_edit.html2
-rw-r--r--askbot/skins/default/templates/user_profile/user_stats.html10
-rw-r--r--askbot/tasks.py5
-rw-r--r--askbot/tests/db_api_tests.py8
-rw-r--r--askbot/tests/email_alert_tests.py67
-rw-r--r--askbot/tests/search_state_tests.py9
-rw-r--r--askbot/utils/html.py4
-rw-r--r--askbot/utils/markup.py10
-rw-r--r--askbot/utils/mysql.py20
-rw-r--r--askbot/views/commands.py22
-rw-r--r--askbot/views/writers.py2
-rw-r--r--follower/TODO.rst3
-rw-r--r--follower/__init__.py147
-rw-r--r--follower/models.py3
-rw-r--r--follower/tests.py39
-rw-r--r--follower/views.py1
-rw-r--r--setup.py4
58 files changed, 5481 insertions, 4338 deletions
diff --git a/MANIFEST.in b/MANIFEST.in
index d7857a3e..1512a8ac 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -15,5 +15,6 @@ recursive-exclude avatar *
recursive-exclude adzone *
recursive-exclude follow *
recursive-exclude categories *
+recursive-exclude follow *
recursive-exclude env
recursive-exclude .tox
diff --git a/askbot/__init__.py b/askbot/__init__.py
index fce9e7a5..2f2c0f52 100644
--- a/askbot/__init__.py
+++ b/askbot/__init__.py
@@ -8,15 +8,18 @@ import os
import smtplib
import sys
import logging
-from askbot import patches
-from askbot.deployment.assertions import assert_package_compatibility
-VERSION = (0, 6, 77)
+VERSION = (0, 6, 87)
#necessary for interoperability of django and coffin
-assert_package_compatibility()
-patches.patch_django()
-patches.patch_coffin()#must go after django
+try:
+ from askbot import patches
+ from askbot.deployment.assertions import assert_package_compatibility
+ assert_package_compatibility()
+ patches.patch_django()
+ patches.patch_coffin()#must go after django
+except ImportError:
+ pass
def get_install_directory():
"""returns path to directory
@@ -31,3 +34,20 @@ def get_version():
this version is meaningful for pypi only
"""
return '.'.join([str(subversion) for subversion in VERSION])
+
+def get_database_engine_name():
+ """returns name of the database engine,
+ independently of the version of django
+ - for django >=1.2 looks into ``settings.DATABASES['default']``,
+ (i.e. assumes that askbot uses database named 'default')
+ , and for django 1.1 and below returns settings.DATABASE_ENGINE
+ """
+ import django
+ from django.conf import settings as django_settings
+ major_version = django.VERSION[0]
+ minor_version = django.VERSION[1]
+ if major_version == 1:
+ if minor_version > 1:
+ return django_settings.DATABASES['default']['ENGINE']
+ else:
+ return django_settings.DATABASE_ENGINE
diff --git a/askbot/conf/__init__.py b/askbot/conf/__init__.py
index 05818b44..d718c48d 100644
--- a/askbot/conf/__init__.py
+++ b/askbot/conf/__init__.py
@@ -1,4 +1,5 @@
#import these to compile code and install values
+import askbot
import askbot.conf.minimum_reputation
import askbot.conf.vote_rules
import askbot.conf.reputation_changes
@@ -23,4 +24,4 @@ def should_show_sort_by_relevance():
"""True if configuration support sorting
questions by search relevance
"""
- return (django_settings.DATABASE_ENGINE == 'postgresql_psycopg2')
+ return ('postgresql_psycopg2' in askbot.get_database_engine_name())
diff --git a/askbot/conf/email.py b/askbot/conf/email.py
index 953aac3d..5ef6b866 100644
--- a/askbot/conf/email.py
+++ b/askbot/conf/email.py
@@ -93,6 +93,18 @@ settings.register(
)
settings.register(
+ livesettings.IntegerValue(
+ EMAIL,
+ 'MAX_UNANSWERED_REMINDERS',
+ default = 5,
+ description = _(
+ 'Max. number of reminders to send '
+ 'about unanswered questions'
+ )
+ )
+)
+
+settings.register(
livesettings.BooleanValue(
EMAIL,
'EMAIL_VALIDATION',
diff --git a/askbot/conf/forum_data_rules.py b/askbot/conf/forum_data_rules.py
index bf38393e..afbbf027 100644
--- a/askbot/conf/forum_data_rules.py
+++ b/askbot/conf/forum_data_rules.py
@@ -14,9 +14,21 @@ FORUM_DATA_RULES = livesettings.ConfigurationGroup(
settings.register(
livesettings.BooleanValue(
FORUM_DATA_RULES,
+ 'ENABLE_VIDEO_EMBEDDING',
+ default = False,
+ description = _(
+ 'Enable embedding videos. '
+ '<em>Note: please read <a href="%(url)s>read this</a> first.</em>'
+ ) % {'url': const.DEPENDENCY_URLS['embedding-video']}
+ )
+)
+
+settings.register(
+ livesettings.BooleanValue(
+ FORUM_DATA_RULES,
'WIKI_ON',
- default=True,
- description=_('Check to enable community wiki feature')
+ default = True,
+ description = _('Check to enable community wiki feature')
)
)
diff --git a/askbot/conf/login_providers.py b/askbot/conf/login_providers.py
index 132562d5..68ab6a52 100644
--- a/askbot/conf/login_providers.py
+++ b/askbot/conf/login_providers.py
@@ -40,6 +40,7 @@ providers = (
'Twitter',
'LinkedIn',
'LiveJournal',
+ #'myOpenID',
'OpenID',
'Technorati',
'Wordpress',
diff --git a/askbot/conf/user_settings.py b/askbot/conf/user_settings.py
index 142a5b16..45d29355 100644
--- a/askbot/conf/user_settings.py
+++ b/askbot/conf/user_settings.py
@@ -14,8 +14,17 @@ settings.register(
livesettings.BooleanValue(
USER_SETTINGS,
'EDITABLE_SCREEN_NAME',
- default=True,
- description=_('Allow editing user screen name')
+ default = True,
+ description = _('Allow editing user screen name')
+ )
+)
+
+settings.register(
+ livesettings.BooleanValue(
+ USER_SETTINGS,
+ 'ALLOW_ACCOUNT_RECOVERY_BY_EMAIL',
+ default = True,
+ description = _('Allow account recovery by email')
)
)
diff --git a/askbot/const/__init__.py b/askbot/const/__init__.py
index ea9236b6..0006714d 100644
--- a/askbot/const/__init__.py
+++ b/askbot/const/__init__.py
@@ -239,7 +239,8 @@ USER_VIEW_DATA_SIZE = 50
DEPENDENCY_URLS = {
'mathjax': 'http://www.mathjax.org/resources/docs/?installation.html',
- 'favicon': 'http://en.wikipedia.org/wiki/Favicon'
+ 'favicon': 'http://en.wikipedia.org/wiki/Favicon',
+ 'embedding-video': 'http://askbot.org/doc/optional-modules.html#embedding-video'
}
PASSWORD_MIN_LENGTH = 8
diff --git a/askbot/deps/django_authopenid/backends.py b/askbot/deps/django_authopenid/backends.py
index cac1ce02..72cc6e4f 100644
--- a/askbot/deps/django_authopenid/backends.py
+++ b/askbot/deps/django_authopenid/backends.py
@@ -35,7 +35,7 @@ class AuthBackend(object):
just which method it is going to use it determined
from the signature of the function call
"""
- login_providers = util.get_login_providers()
+ login_providers = util.get_enabled_login_providers()
if method == 'password':
if login_providers[provider_name]['type'] != 'password':
raise ImproperlyConfigured('login provider must use password')
@@ -150,7 +150,7 @@ class AuthBackend(object):
any for any login provider that uses password
and allows the password change function
"""
- login_providers = util.get_login_providers()
+ login_providers = util.get_enabled_login_providers()
if login_providers[provider_name]['type'] != 'password':
raise ImproperlyConfigured('login provider must use password')
diff --git a/askbot/deps/django_authopenid/forms.py b/askbot/deps/django_authopenid/forms.py
index 30674eb6..91534221 100644
--- a/askbot/deps/django_authopenid/forms.py
+++ b/askbot/deps/django_authopenid/forms.py
@@ -69,7 +69,7 @@ class LoginProviderField(forms.CharField):
"""makes sure that login provider name
exists is in the list of accepted providers
"""
- providers = util.get_login_providers()
+ providers = util.get_enabled_login_providers()
if value in providers:
return value
else:
@@ -87,7 +87,7 @@ class PasswordLoginProviderField(LoginProviderField):
one of the known password login providers
"""
value = super(PasswordLoginProviderField, self).clean(value)
- providers = util.get_login_providers()
+ providers = util.get_enabled_login_providers()
if providers[value]['type'] != 'password':
raise forms.ValidationError(
'provider %s must accept password' % value
@@ -192,7 +192,7 @@ class LoginForm(forms.Form):
contents of cleaned_data depends on the type
of login
"""
- providers = util.get_login_providers()
+ providers = util.get_enabled_login_providers()
if 'login_provider_name' in self.cleaned_data:
provider_name = self.cleaned_data['login_provider_name']
diff --git a/askbot/deps/django_authopenid/util.py b/askbot/deps/django_authopenid/util.py
index a913400f..809c6103 100644
--- a/askbot/deps/django_authopenid/util.py
+++ b/askbot/deps/django_authopenid/util.py
@@ -167,9 +167,28 @@ def use_password_login():
else:
return True
-def get_major_login_providers():
+def filter_enabled_providers(data):
+ """deletes data about disabled providers from
+ the input dictionary
+ """
+ delete_list = list()
+ for provider_key, provider_settings in data.items():
+ name = provider_settings['name']
+ is_enabled = getattr(askbot_settings, 'SIGNIN_' + name.upper() + '_ENABLED')
+ if is_enabled == False:
+ delete_list.append(provider_key)
+
+ for provider_key in delete_list:
+ del data[provider_key]
+
+ return data
+
+
+def get_enabled_major_login_providers():
"""returns a dictionary with data about login providers
whose icons are to be shown in large format
+
+ disabled providers are excluded
items of the dictionary are dictionaries with keys:
@@ -299,23 +318,25 @@ def get_major_login_providers():
'icon_media_path': '/jquery-openid/images/openid.gif',
'openid_endpoint': None,
}
- return data
+ return filter_enabled_providers(data)
-def get_minor_login_providers():
- """same as get_major_login_providers
+def get_enabled_minor_login_providers():
+ """same as get_enabled_major_login_providers
but those that are to be displayed with small buttons
- structure of dictionary values is the same as in get_major_login_providers
+ disabled providers are excluded
+
+ structure of dictionary values is the same as in get_enabled_major_login_providers
"""
data = SortedDict()
- data['myopenid'] = {
- 'name': 'myopenid',
- 'display_name': 'MyOpenid',
- 'type': 'openid-username',
- 'extra_token_name': _('MyOpenid user name'),
- 'icon_media_path': '/jquery-openid/images/myopenid-2.png',
- 'openid_endpoint': 'http://%(username)s.myopenid.com'
- }
+ #data['myopenid'] = {
+ # 'name': 'myopenid',
+ # 'display_name': 'MyOpenid',
+ # 'type': 'openid-username',
+ # 'extra_token_name': _('MyOpenid user name'),
+ # 'icon_media_path': '/jquery-openid/images/myopenid-2.png',
+ # 'openid_endpoint': 'http://%(username)s.myopenid.com'
+ #}
data['flickr'] = {
'name': 'flickr',
'display_name': 'Flickr',
@@ -380,13 +401,13 @@ def get_minor_login_providers():
'icon_media_path': '/jquery-openid/images/verisign-2.png',
'openid_endpoint': 'http://%(username)s.pip.verisignlabs.com/'
}
- return data
+ return filter_enabled_providers(data)
-def get_login_providers():
+def get_enabled_login_providers():
"""return all login providers in one sorted dict
"""
- data = get_major_login_providers()
- data.update(get_minor_login_providers())
+ data = get_enabled_major_login_providers()
+ data.update(get_enabled_minor_login_providers())
return data
def set_login_provider_tooltips(provider_dict, active_provider_names = None):
@@ -447,7 +468,7 @@ def get_oauth_parameters(provider_name):
it should not be called at compile time
otherwise there may be strange errors
"""
- providers = get_login_providers()
+ providers = get_enabled_login_providers()
data = providers[provider_name]
if data['type'] != 'oauth':
raise ValueError('oauth provider expected, %s found' % data['type'])
diff --git a/askbot/deps/django_authopenid/views.py b/askbot/deps/django_authopenid/views.py
index 14def205..cb5994c4 100644
--- a/askbot/deps/django_authopenid/views.py
+++ b/askbot/deps/django_authopenid/views.py
@@ -537,10 +537,27 @@ def show_signin_view(
'use_password_login': util.use_password_login(),
}
- major_login_providers = util.get_major_login_providers()
- minor_login_providers = util.get_minor_login_providers()
+ major_login_providers = util.get_enabled_major_login_providers()
+ minor_login_providers = util.get_enabled_minor_login_providers()
+
+ #determine if we are only using password login
+ active_provider_names = [p['name'] for p in major_login_providers.values()]
+ active_provider_names.extend([p['name'] for p in minor_login_providers.values()])
+
+ have_buttons = True
+ if (len(active_provider_names) == 1 and active_provider_names[0] == 'local'):
+ if askbot_settings.SIGNIN_ALWAYS_SHOW_LOCAL_LOGIN == True:
+ #in this case the form is not using javascript, so set initial values
+ #here
+ have_buttons = False
+ login_form.initial['login_provider_name'] = 'local'
+ if request.user.is_authenticated():
+ login_form.initial['password_action'] = 'change_password'
+ else:
+ login_form.initial['password_action'] = 'login'
+
+ data['have_buttons'] = have_buttons
- active_provider_names = None
if request.user.is_authenticated():
data['existing_login_methods'] = existing_login_methods
active_provider_names = [
@@ -926,8 +943,9 @@ def signup_with_password(request):
email_feeds_form = askbot_forms.SimpleEmailSubscribeForm()
logging.debug('printing legacy signup form')
- major_login_providers = util.get_major_login_providers()
- minor_login_providers = util.get_minor_login_providers()
+ major_login_providers = util.get_enabled_major_login_providers()
+ minor_login_providers = util.get_enabled_minor_login_providers()
+
context_data = {
'form': form,
'page_class': 'openid-signin',
@@ -1069,6 +1087,8 @@ def account_recover(request, key = None):
url name 'user_account_recover'
"""
+ if not askbot_settings.ALLOW_ACCOUNT_RECOVERY_BY_EMAIL:
+ raise Http404
if request.method == 'POST':
form = forms.AccountRecoveryForm(request.POST)
if form.is_valid():
diff --git a/askbot/doc/source/contributors.rst b/askbot/doc/source/contributors.rst
index c5887f42..f9617fc1 100644
--- a/askbot/doc/source/contributors.rst
+++ b/askbot/doc/source/contributors.rst
@@ -12,10 +12,11 @@ Programming
* Evgeny Fadeev - founder of askbot
* Benoit Lavine (with Windriver Software, Inc.)
* Alex Robbins (celery support)
-* Adolfo Fitoria
+* `Adolfo Fitoria <http://fitoria.net>`_
* Andrei Mamoutkine
* Ramiro Morales (with Machinalis)
* Andy Knotts
+* `Gael Pasgrimaud <http://www.gawel.org/>`_ (bearstech)
* Jeff Madynski
Translations
diff --git a/askbot/doc/source/footnotes.rst b/askbot/doc/source/footnotes.rst
new file mode 100644
index 00000000..f8e96da0
--- /dev/null
+++ b/askbot/doc/source/footnotes.rst
@@ -0,0 +1,70 @@
+=========
+Footnotes
+=========
+
+This page summarizes additional information that might be useful
+for deployment of development of ``askbot``.
+
+.. _git:
+
+Git
+===
+
+At askbot we use ``git`` to keep track of the source code,
+and the main repository is hosted at
+`github <https://github.com/ASKBOT/askbot-devel>`_.
+
+With git you can always grab
+the latest code of askbot from the
+latest ``askbot`` code::
+
+ git clone git://github.com/ASKBOT/askbot-devel.git
+
+Do some customization by editing files and then::
+
+ git add <list-of-changed-files>
+ git commit -m 'explain why you have changed some files'
+
+Bring updates from the main repo::
+
+ git git fetch origin master:github #.. onto a local branch called github
+ git checkout master
+ git merge github
+
+If all goes well, you are done. Otherwise, you may need to
+`resolve the conflict <http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#resolving-a-merge>`_.
+
+Here is a
+`good basic tutorial <http://www.ralfebert.de/tutorials/git/>`_
+about git,
+more comprehensive ones
+`here <http://book.git-scm.com/>`_
+and
+`there <http://help.github.com/>`_.
+Finally, you also may want to visit the
+official git `reference <http://gitref.org>`_
+and `documentation <http://www.kernel.org/pub/software/scm/git/docs/>`_.
+There are `screencasts <http://gitcasts.com/>`_ too.
+
+.. _pip:
+
+Pip
+===
+
+``Pip`` is the best package management tool for python, allows to install and
+unistall python packages, supports installation from source code repositories
+and much more.
+
+For more information about ``pip``,
+including its installation,
+please visit the `pip package page <http://pypi.python.org/pypi/pip>`_
+and the links within.
+
+.. _pip-pypi: http://pypi.python.org/pypi/pip
+.. _git-csm-book: http://book.git-scm.com/
+.. _git-basic-tutorial: http://www.ralfebert.de/tutorials/git/
+.. _git-github-tutorial: http://help.github.com/
+.. _git-docs: http://www.kernel.org/pub/software/scm/git/docs/
+.. _git-reference: http://gitref.org
+.. _git-casts: http://gitcasts.com/
+.. _git-resolve-conflict: http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#resolving-a-merge
diff --git a/askbot/doc/source/index.rst b/askbot/doc/source/index.rst
index 981af741..fedc3913 100644
--- a/askbot/doc/source/index.rst
+++ b/askbot/doc/source/index.rst
@@ -22,7 +22,8 @@ at the forum_ or by email at admin@askbot.org
Import data (StackExchange) <import-data>
Appendix A: Maintenance procedures <management-commands>
Appendix B: Sending email to askbot <sending-email-to-askbot>
- Apperdix C: Optional modules <optional-modules>
+ Appendix C: Optional modules <optional-modules>
+ Footnotes <footnotes>
Contributors <contributors>
Some background information: Askbot is written in Python on top of the Django platform.
diff --git a/askbot/doc/source/optional-modules.rst b/askbot/doc/source/optional-modules.rst
index 3689db19..15db2e94 100644
--- a/askbot/doc/source/optional-modules.rst
+++ b/askbot/doc/source/optional-modules.rst
@@ -5,6 +5,8 @@ Optional modules
Askbot supports a number of optional modules, enabling certain features, not available
in askbot by default.
+.. _follow-users:
+
Follow users
============
@@ -14,6 +16,55 @@ Install ``django-followit`` app::
Then add ``followit`` to the ``INSTALLED_APPS`` and run ``syncdb`` management command.
+.. _embedding-video:
+
+Embedding video
+===============
+
+Want to share videos in askbot posts? It is possible, but you will have to install a forked
+version of ``markdown2`` module, here is how::
+
+ pip uninstall markdown2
+ pip install -e git+git://github.com/andryuha/python-markdown2.git#egg=markdown2
+
+Also, for this to work you'll need to have :ref:`pip` and :ref:`git` installed on your system.
+
+Finally, please go to your forum :ref:`live settings <live-settings>` -->
+"Settings for askbot data entry and display" and check "Enable embedding video".
+
+Limitation: at the moment only YouTube and Veoh are supported.
+
+.. _ldap:
+
+LDAP authentication
+===================
+
+To enable authentication via LDAP
+(Lightweight Directory Access Protocol, see more info elsewhere)
+, first :ref:`install <installation-of-python-packages>`
+``python-ldap`` package:
+
+ pip install python-ldap
+
+After that, add configuration parameters in :ref:`live settings <live-settings>`, section
+"Keys to connect the site with external services ..."
+(url ``/settings/EXTERNAL_KEYS``, relative to the domain name)
+
+.. note::
+ Location of these parameters is likely to change in the future.
+ When that happens, an update notice will appear in the documentation.
+
+The parameters are:
+
+* "Use LDAP authentication for the password login" - enable/disable the feature.
+ When enabled, the user name and password will be routed to use the LDAP protocol.
+ Default system password authentication will be overridden.
+* "LDAP service provider name" - any string - just come up with a name for the provider service.
+* "URL fro the LDAP service" - a correct url to access the service.
+* "Explain how to change the LDAP password"
+ - askbot does not provide a method to change LDAP passwords
+ , therefore - use this field to explain users how they can change their passwords.
+
Uploaded avatars
================
diff --git a/askbot/locale/fr/LC_MESSAGES/django.mo b/askbot/locale/fr/LC_MESSAGES/django.mo
index 74cb02fc..748fd91b 100644
--- a/askbot/locale/fr/LC_MESSAGES/django.mo
+++ b/askbot/locale/fr/LC_MESSAGES/django.mo
Binary files differ
diff --git a/askbot/locale/fr/LC_MESSAGES/django.po b/askbot/locale/fr/LC_MESSAGES/django.po
index eec874e9..7214a1bc 100644
--- a/askbot/locale/fr/LC_MESSAGES/django.po
+++ b/askbot/locale/fr/LC_MESSAGES/django.po
@@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Askbot\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-04-14 23:43-0500\n"
+"POT-Creation-Date: 2011-04-22 04:32-0500\n"
"PO-Revision-Date: 2010-08-25 19:15+0100\n"
"Last-Translator: - <->\n"
"Language-Team: FrenchTranslationTeam <toto@toto.com>\n"
@@ -16,9 +16,11 @@ msgstr ""
"X-Poedit-Country: FRANCE\n"
"X-Poedit-SourceCharset: utf-8\n"
-#: exceptions.py:9
+#: exceptions.py:13
msgid "Sorry, but anonymous visitors cannot access this function"
-msgstr "Désolé, mais les utilisateurs anonymes ne peuvent pas accéder à cette fonction"
+msgstr ""
+"Désolé, mais les utilisateurs anonymes ne peuvent pas accéder à cette "
+"fonction"
#: feed.py:22
msgid " - "
@@ -28,34 +30,48 @@ msgstr " - "
msgid "latest questions"
msgstr "dernières questions"
-#: forms.py:54 skins/default/templates/answer_edit_tips.html:43
-#: skins/default/templates/answer_edit_tips.html:47
-#: skins/default/templates/question_edit_tips.html:40
-#: skins/default/templates/question_edit_tips.html:45
+#: forms.py:73
+#, fuzzy
+msgid "select country"
+msgstr "Supprimer le compte"
+
+#: forms.py:82
+msgid "Country"
+msgstr ""
+
+#: forms.py:90
+#, fuzzy
+msgid "Country field is required"
+msgstr "ce champ est obligatoire"
+
+#: forms.py:103 skins/default/templates/blocks/answer_edit_tips.html:43
+#: skins/default/templates/blocks/answer_edit_tips.html:47
+#: skins/default/templates/blocks/question_edit_tips.html:38
+#: skins/default/templates/blocks/question_edit_tips.html:43
msgid "title"
msgstr "titre"
-#: forms.py:55
+#: forms.py:104
msgid "please enter a descriptive title for your question"
msgstr "Veuillez saisir un titre descriptif pour votre question."
-#: forms.py:60
+#: forms.py:109
msgid "title must be > 10 characters"
msgstr "le titre doit comporter plus de 10 caractères."
-#: forms.py:69
+#: forms.py:118
msgid "content"
msgstr "contenu"
-#: forms.py:75
+#: forms.py:124
msgid "question content must be > 10 characters"
msgstr "La question doit comporter plus de 10 caractères."
-#: forms.py:84 skins/default/templates/header.html:31
+#: forms.py:133 skins/default/templates/blocks/header.html:22
msgid "tags"
msgstr "Mots-clés (tags)"
-#: forms.py:86
+#: forms.py:135
msgid ""
"Tags are short keywords, with no spaces within. Up to five tags can be used."
msgstr ""
@@ -63,35 +79,33 @@ msgstr ""
"doivent être courts, et ne pas comporter d'espaces. Vous pouvez utiliser "
"jusqu'à 5 mots-clés."
-#: forms.py:93 skins/default/templates/question_retag.html:78
+#: forms.py:142 skins/default/templates/question_retag.html:60
msgid "tags are required"
msgstr "Les mots-clés sont obligatoires."
-#: forms.py:102
+#: forms.py:151
#, python-format
msgid "please use %(tag_count)d tag or less"
msgid_plural "please use %(tag_count)d tags or less"
msgstr[0] "Veuillez utiliser %(tag_count)d mot-clé, ou moins"
msgstr[1] "Veuillez utiliser %(tag_count)d mots-clés, ou moins"
-#: forms.py:111
+#: forms.py:160
#, python-format
msgid "each tag must be shorter than %(max_chars)d character"
msgid_plural "each tag must be shorter than %(max_chars)d characters"
msgstr[0] "Chaque mot-clé doit comporter moins de %(max_chars)d caractère"
msgstr[1] "Chaque mot-clé doit comporter moins de %(max_chars)d caractères"
-#: forms.py:119
+#: forms.py:168
msgid "use-these-chars-in-tags"
msgstr "utiliser-ces-caracteres-dans-les-mots-cles"
-#: forms.py:130
-#: skins/default/templates/unused/question_summary_list_roll.html:26
-#: skins/default/templates/unused/question_summary_list_roll.html:38
-msgid "community wiki"
-msgstr "Wiki communautaire"
+#: forms.py:203
+msgid "community wiki (karma is not awarded & many others can edit wiki post)"
+msgstr "wiki communautaire (le karma n'est pas mis à jour & peu de personnes peuvent éditer la question"
-#: forms.py:131
+#: forms.py:204
msgid ""
"if you choose community wiki option, the question and answer do not generate "
"points and name of author will not be shown"
@@ -99,11 +113,11 @@ msgstr ""
"Si vous choisissez l'option \"Wiki communautaire\" , questions et réponses "
"ne génèrent pas de points, et le nom de l'auteur ne sera pas affiché."
-#: forms.py:147
+#: forms.py:220
msgid "update summary:"
msgstr "Résumé des modifications:"
-#: forms.py:148
+#: forms.py:221
msgid ""
"enter a brief summary of your revision (e.g. fixed spelling, grammar, "
"improved style, this field is optional)"
@@ -111,272 +125,289 @@ msgstr ""
"Saisissez un bref résumé à propos de la révision (par exemple : correction "
"orthographique, amélioration du style, ce champ est optionnel)"
-#: forms.py:204
+#: forms.py:284
msgid "Enter number of points to add or subtract"
msgstr "Saisissez le nombre de points à ajouter ou retirer"
-#: forms.py:218 const/__init__.py:220
+#: forms.py:298 const/__init__.py:225
msgid "approved"
msgstr "approuvée"
-#: forms.py:219 const/__init__.py:221
+#: forms.py:299 const/__init__.py:226
msgid "watched"
msgstr "consultée"
-#: forms.py:220 const/__init__.py:222
+#: forms.py:300 const/__init__.py:227
msgid "suspended"
msgstr "suspendu"
-#: forms.py:221 const/__init__.py:223
+#: forms.py:301 const/__init__.py:228
msgid "blocked"
msgstr "bloquée"
# FIXME
-#: forms.py:223 const/__init__.py:219
+#: forms.py:303 const/__init__.py:224
msgid "moderator"
msgstr "moderateur"
-#: forms.py:243
+#: forms.py:323
msgid "Change status to"
msgstr "Modifier le statut en "
-#: forms.py:270
+#: forms.py:350
msgid "which one?"
msgstr "laquelle ?"
-#: forms.py:291
+#: forms.py:371
msgid "Cannot change own status"
msgstr "Impossible de changer son propre statut"
-#: forms.py:297
+#: forms.py:377
msgid "Cannot turn other user to moderator"
msgstr "Impossible de convertir un autre utilisateur en modérateur"
-#: forms.py:304
+#: forms.py:384
msgid "Cannot change status of another moderator"
msgstr "Impossible de changer le statut d'un autre modérateur"
-#: forms.py:310
+#: forms.py:390
#, python-format
msgid ""
"If you wish to change %(username)s's status, please make a meaningful "
"selection."
-msgstr "Si vous souhaitez changer le statut de %(username)s, effectuez une selection pertinente."
+msgstr ""
+"Si vous souhaitez changer le statut de %(username)s, effectuez une "
+"selection pertinente."
-#: forms.py:319
+#: forms.py:399
msgid "Subject line"
msgstr "Sujet"
-#: forms.py:326
+#: forms.py:406
msgid "Message text"
msgstr "Corps du message"
-#: forms.py:403
+#: forms.py:489
msgid "Your name:"
msgstr "Votre nom:"
-#: forms.py:404
+#: forms.py:490
msgid "Email (not shared with anyone):"
msgstr "Votre email (ne sera pas communiqué):"
-#: forms.py:405
+#: forms.py:491
msgid "Your message:"
msgstr "Votre message:"
-#: forms.py:492
-msgid "this email does not have to be linked to gravatar"
+#: forms.py:528
+msgid "ask anonymously"
+msgstr "être anonyme"
+
+#: forms.py:530
+msgid "Check if you do not want to reveal your name when asking this question"
+msgstr ""
+
+#: forms.py:672
+msgid ""
+"You have asked this question anonymously, if you decide to reveal your "
+"identity, please check this box."
+msgstr ""
+
+#: forms.py:676
+msgid "reveal identity"
+msgstr ""
+
+#: forms.py:734
+msgid ""
+"Sorry, only owner of the anonymous question can reveal his or her identity, "
+"please uncheck the box"
+msgstr ""
+
+#: forms.py:747
+msgid ""
+"Sorry, apparently rules have just changed - it is no longer possible to ask "
+"anonymously. Please either check the \"reveal identity\" box or reload this "
+"page and try editing the question again."
+msgstr ""
+
+#: forms.py:785
+#, fuzzy
+msgid "this email will be linked to gravatar"
msgstr "Cet email ne doit pas être lié à Gravatar"
-#: forms.py:499
+#: forms.py:792
msgid "Real name"
msgstr "Nom réel"
-#: forms.py:506
+#: forms.py:799
msgid "Website"
msgstr "Site web"
-#: forms.py:513
-msgid "Location"
-msgstr "Lieu"
+#: forms.py:806
+msgid "City"
+msgstr ""
-#: forms.py:520
+#: forms.py:815
+msgid "Show country"
+msgstr ""
+
+#: forms.py:820
msgid "Date of birth"
msgstr "Date de naissance"
-#: forms.py:521
+#: forms.py:821
msgid "will not be shown, used to calculate age, format: YYYY-MM-DD"
msgstr ""
"ne sera pas affichée; utilisée pour calculer votre âge. Format: AAAA-MM-"
"JJPar exemple: 1980-12-25 pour le 25 décembre 1980"
-#: forms.py:527
+#: forms.py:827
msgid "Profile"
msgstr "Profil"
-#: forms.py:536
+#: forms.py:836
msgid "Screen name"
msgstr "Pseudo"
-#: forms.py:561 forms.py:562
+#: forms.py:867 forms.py:868
msgid "this email has already been registered, please use another one"
msgstr "Cet email a déjà été enregistré; merci d'utiliser une autre adresse"
-#: forms.py:568
+#: forms.py:875
msgid "Choose email tag filter"
msgstr "Choisissez un tag pour filtrer les emails"
-#: forms.py:607
+#: forms.py:915
msgid "Asked by me"
msgstr "Mes questions"
-#: forms.py:610
+#: forms.py:918
msgid "Answered by me"
msgstr "Questions auxquelles j'ai répondu"
-#: forms.py:613
+#: forms.py:921
msgid "Individually selected"
msgstr "Sélectionnées individuellement"
-#: forms.py:616
+#: forms.py:924
msgid "Entire forum (tag filtered)"
msgstr "Forum entier (filtré par tag)"
-#: forms.py:620
+#: forms.py:928
msgid "Comments and posts mentioning me"
msgstr "Commentaires et messages me mentionnant"
-#: forms.py:690
+#: forms.py:998
msgid "okay, let's try!"
msgstr "D'accord, j'essaye !"
-#: forms.py:691
+#: forms.py:999
msgid "no community email please, thanks"
msgstr "pas d'emails s'il vous plait, merci"
-#: forms.py:695
+#: forms.py:1003
msgid "please choose one of the options above"
msgstr "Veuillez choisir une des options ci-dessus"
-#: urls.py:43
+#: urls.py:44
msgid "about/"
msgstr "apropos/"
-#: urls.py:44 conf/site_settings.py:79
+#: urls.py:45 conf/site_settings.py:79
msgid "faq/"
msgstr "faq/"
-#: urls.py:45
+#: urls.py:46
msgid "privacy/"
msgstr "vieprivee/"
-#: urls.py:46
+#: urls.py:47
msgid "logout/"
msgstr "deconnecter/"
-#: urls.py:48 urls.py:53
+#: urls.py:49 urls.py:54
msgid "answers/"
msgstr "reponses/"
-#: urls.py:48 urls.py:69 urls.py:165
+#: urls.py:49 urls.py:75 urls.py:186
msgid "edit/"
msgstr "modifier/"
-#: urls.py:53 urls.py:99
+#: urls.py:54 urls.py:105
msgid "revisions/"
msgstr "revisions/"
-#: urls.py:59 urls.py:64 urls.py:69 urls.py:74 urls.py:79 urls.py:84
-#: urls.py:89 urls.py:94 urls.py:99 skins/default/templates/question.html:431
+#: urls.py:60 urls.py:70 urls.py:75 urls.py:80 urls.py:85 urls.py:90
+#: urls.py:95 urls.py:100 urls.py:105
+#: skins/default/templates/question.html:438
msgid "questions/"
msgstr "questions/"
-#: urls.py:64
+#: urls.py:70
msgid "ask/"
msgstr "question/"
-#: urls.py:74
+#: urls.py:80
msgid "retag/"
msgstr "requalification/"
-#: urls.py:79
+#: urls.py:85
msgid "close/"
msgstr "fermer/"
-#: urls.py:84
+#: urls.py:90
msgid "reopen/"
msgstr "reouvrir/"
-#: urls.py:89
+#: urls.py:95
msgid "answer/"
msgstr "repondre/"
-#: urls.py:94 skins/default/templates/question.html:431
+#: urls.py:100 skins/default/templates/question.html:438
msgid "vote/"
msgstr "voter/"
-#: urls.py:115
-msgid "command/"
-msgstr "commande/"
-
-#: urls.py:131 skins/default/templates/question.html:429
-#: skins/default/templates/questions.html:251
+#: urls.py:132 skins/default/templates/question.html:436
+#: skins/default/templates/main_page/javascript.html:18
msgid "question/"
msgstr "question/"
-#: urls.py:136
+#: urls.py:137
msgid "tags/"
msgstr "mots-cles/"
-#: urls.py:141 urls.py:147 skins/default/templates/questions.html:246
-#: skins/default/templates/questions.html:247
-msgid "mark-tag/"
-msgstr "marquer-avec-un-tag/"
-
-#: urls.py:141 skins/default/templates/questions.html:246
-msgid "interesting/"
-msgstr "interessant/"
-
-#: urls.py:147 skins/default/templates/questions.html:247
-msgid "ignored/"
-msgstr "ignoree/"
-
-# FIXME
-#: urls.py:153 skins/default/templates/questions.html:248
-msgid "unmark-tag/"
-msgstr "retirer-un-tag/"
+#: urls.py:175
+msgid "subscribe-for-tags/"
+msgstr ""
-#: urls.py:159 urls.py:165 urls.py:170
-#: skins/default/templates/questions.html:252
+#: urls.py:180 urls.py:186 urls.py:191
+#: skins/default/templates/main_page/javascript.html:19
msgid "users/"
msgstr "utilisateurs/"
-#: urls.py:175 urls.py:180
+#: urls.py:196 urls.py:201
msgid "badges/"
msgstr "Badges/"
-#: urls.py:185
+#: urls.py:206
msgid "messages/"
msgstr "messages/"
# FIXME
-#: urls.py:185
+#: urls.py:206
msgid "markread/"
msgstr "marques-pour-lecture/"
-#: urls.py:201
+#: urls.py:222
msgid "upload/"
msgstr "envoyer-sur-le-serveur/"
-#: urls.py:202
-msgid "search/"
-msgstr "chercher/"
-
-#: urls.py:203
+#: urls.py:223
msgid "feedback/"
msgstr "retour/"
-#: urls.py:204 setup_templates/settings.py:181
-#: skins/default/templates/authopenid/signin.html:249
+#: urls.py:224 setup_templates/settings.py:201
+#: skins/default/templates/authopenid/providers_javascript.html:7
msgid "account/"
msgstr "compte/"
@@ -472,20 +503,42 @@ msgstr "Question favorite"
msgid "Stellar Question: minimum stars"
msgstr "Excellente question"
-#: conf/email.py:12
+#: conf/badges.py:210
+msgid "Commentator: minimum comments"
+msgstr ""
+
+#: conf/badges.py:219
+msgid "Taxonomist: minimum tag use count"
+msgstr ""
+
+#: conf/badges.py:228
+msgid "Enthusiast: minimum days"
+msgstr ""
+
+#: conf/email.py:14
msgid "Email and email alert settings"
msgstr "Paramétrage des emails, et des alertes par email."
-#: conf/email.py:20
+#: conf/email.py:22
+msgid "Prefix for the email subject line"
+msgstr "Préfixe pour la ligne de sujet de l'email"
+
+#: conf/email.py:24
+msgid ""
+"This setting takes default from the django settingEMAIL_SUBJECT_PREFIX. A "
+"value entered here will overridethe default."
+msgstr ""
+
+#: conf/email.py:36
msgid "Maximum number of news entries in an email alert"
msgstr "Nombre maximum de nouvelles dans une alerte par email"
-#: conf/email.py:30
+#: conf/email.py:46
msgid "Default news notification frequency"
msgstr ""
"Fréquence par défaut pour l'envoi des mails de notification de nouvelles"
-#: conf/email.py:32
+#: conf/email.py:48
msgid ""
"This option currently defines default frequency of emailed updates in the "
"following five categories: questions asked by user, answered by user, "
@@ -499,36 +552,60 @@ msgstr ""
"personne) et messages mentionnant les réponses à l'utilisateur et les "
"réponses aux commentaires"
-#: conf/email.py:47
+#: conf/email.py:63
msgid "Require email verification before allowing to post"
msgstr ""
"Nous devons valider votre adresse email avant que vous ne puissiez publier "
"des messages"
-#: conf/email.py:48
+#: conf/email.py:64
msgid ""
"Active email verification is done by sending a verification key in email"
msgstr ""
"Nous vérifions que l'adresse email est active en y envoyant un email "
"contenant une clé de vérification."
-#: conf/email.py:57
+#: conf/email.py:73
msgid "Allow only one account per email address"
msgstr "N'autoriser qu'un compte par adresse email"
-#: conf/email.py:66
+#: conf/email.py:82
msgid "Fake email for anonymous user"
msgstr "Faux email pour utilisateur anonyme"
-#: conf/email.py:67
+#: conf/email.py:83
msgid "Use this setting to control gravatar for email-less user"
msgstr ""
"Utilisez ce paramétrage pour contrôler Gravatar (pour les utilisateurs sans "
"adresse email)"
-#: conf/email.py:76
-msgid "Prefix for the email subject line"
-msgstr "Préfixe pour la ligne de sujet de l'email"
+#: conf/email.py:92
+#, fuzzy
+msgid "Allow posting questions by email"
+msgstr ""
+"<span class=\"strong big\">Formulez votre question à l'aide du formulaire ci-"
+"dessous (un court titre résumant la question, puis la question à proprement "
+"parler, aussi détaillée que vous le souhaitez...)</span>. A l'étape "
+"suivante, vous devrez saisir votre email et votre nom (ou un pseudo si vous "
+"souhaitez rester anonyme...). Ces éléments sont nécessaires pour bénéficier "
+"des fonctionnalités de notre module de questions/réponses, qui repose sur un "
+"principe communautaire."
+
+#: conf/email.py:94
+msgid ""
+"Before enabling this setting - please fill out IMAP settings in the settings."
+"py file"
+msgstr ""
+
+#: conf/email.py:105
+msgid "Replace space in emailed tags with dash"
+msgstr ""
+
+#: conf/email.py:107
+msgid ""
+"This setting applies to tags written in the subject line of questions asked "
+"by email"
+msgstr ""
#: conf/external_keys.py:11
msgid "Keys to connect the site with external services like Facebook, etc."
@@ -677,57 +754,145 @@ msgstr ""
"validateur HTML</a> sur la page \"vie privée\" pour vérifier ce que vous "
"avez saisi."
-#: conf/forum_data_rules.py:12
+#: conf/forum_data_rules.py:11
msgid "Settings for askbot data entry and display"
msgstr "Paramétrage de l'affichage et de la saisie de données"
-#: conf/forum_data_rules.py:20
+#: conf/forum_data_rules.py:19
msgid "Check to enable community wiki feature"
msgstr ""
"Cochez cette case pour activer la fonctionnalité \"wiki communautaire\""
-#: conf/forum_data_rules.py:29
+#: conf/forum_data_rules.py:28
+msgid "Allow asking questions anonymously"
+msgstr ""
+
+#: conf/forum_data_rules.py:30
+msgid ""
+"Users do not accrue reputation for anonymous questions and their identity is "
+"not revealed until they change their mind"
+msgstr ""
+
+#: conf/forum_data_rules.py:42
msgid "Maximum length of tag (number of characters)"
msgstr "Taille maximale d'un mot-clé (tag), en nombre de caractères"
-#: conf/forum_data_rules.py:39
+#: conf/forum_data_rules.py:51
+msgid "Force lowercase the tags"
+msgstr ""
+
+#: conf/forum_data_rules.py:53
+msgid ""
+"Attention: after checking this, please back up the database, and run a "
+"management command: <code>python manage.py fix_question_tags</code> to "
+"globally rename the tags"
+msgstr ""
+
+#: conf/forum_data_rules.py:66
+#, fuzzy
+msgid "Use wildcard tags"
+msgstr "Tags associés"
+
+#: conf/forum_data_rules.py:68
+msgid ""
+"Wildcard tags can be used to follow or ignore many tags at once, a valid "
+"wildcard tag has a single wildcard at the very end"
+msgstr ""
+
+#: conf/forum_data_rules.py:81
msgid "Default max number of comments to display under posts"
msgstr ""
-#: conf/forum_data_rules.py:50
+#: conf/forum_data_rules.py:92
#, python-format
msgid "Maximum comment length, must be < %(max_len)s"
msgstr ""
-#: conf/forum_data_rules.py:60
+#: conf/forum_data_rules.py:102
+msgid "Limit time to edit comments"
+msgstr ""
+
+#: conf/forum_data_rules.py:104
+msgid "If unchecked, there will be no time limit to edit the comments"
+msgstr ""
+
+#: conf/forum_data_rules.py:115
+msgid "Minutes allowed to edit a comment"
+msgstr ""
+
+#: conf/forum_data_rules.py:116
+msgid "To enable this setting, check the previous one"
+msgstr ""
+
+#: conf/forum_data_rules.py:125
+msgid "Save comment by pressing <Enter> key"
+msgstr ""
+
+#: conf/forum_data_rules.py:134
msgid "Minimum length of search term for Ajax search"
msgstr ""
-#: conf/forum_data_rules.py:61
+#: conf/forum_data_rules.py:135
msgid "Must match the corresponding database backend setting"
msgstr ""
-#: conf/forum_data_rules.py:70
+#: conf/forum_data_rules.py:144
+msgid "Do not make text query sticky in search"
+msgstr ""
+
+#: conf/forum_data_rules.py:146
+msgid ""
+"Check to disable the \"sticky\" behavior of the search query. This may be "
+"useful if you want to move the search bar away from the default position or "
+"do not like the default sticky behavior of the text search query."
+msgstr ""
+
+#: conf/forum_data_rules.py:159
msgid "Maximum number of tags per question"
msgstr "Nombre maximal de mots-clés (tags) par question"
-#: conf/forum_data_rules.py:82
+#: conf/forum_data_rules.py:171
msgid "Number of questions to list by default"
msgstr "Nombre de questions par défaut à afficher dans la liste "
-#: conf/forum_data_rules.py:92
+#: conf/forum_data_rules.py:181
msgid "What should \"unanswered question\" mean?"
msgstr "Que signifie \"questions sans réponses\" ?"
+#: conf/login_providers.py:11
+msgid "Login provider setings"
+msgstr ""
+
+#: conf/login_providers.py:19
+msgid ""
+"Show alternative login provider buttons on the password \"Sign Up\" page"
+msgstr ""
+
+#: conf/login_providers.py:28
+msgid "Always display local login form and hide \"Askbot\" button."
+msgstr ""
+
+#: conf/login_providers.py:55
+#, python-format
+msgid "Activate %(provider)s login"
+msgstr ""
+
+#: conf/login_providers.py:60
+#, python-format
+msgid ""
+"Note: to really enable %(provider)s login some additional parameters will "
+"need to be set in the \"External keys\" section"
+msgstr ""
+
#: conf/markup.py:15
msgid "Markup formatting"
msgstr ""
-#: conf/markup.py:29
+#: conf/markup.py:22
msgid "Enable code-friendly Markdown"
msgstr ""
-#: conf/markup.py:31
+#: conf/markup.py:24
msgid ""
"If checked, underscore characters will not trigger italic or bold formatting "
"- bold and italic text can still be marked up with asterisks. Note that "
@@ -735,22 +900,22 @@ msgid ""
"are heavily used in LaTeX input."
msgstr ""
-#: conf/markup.py:46
+#: conf/markup.py:39
msgid "Mathjax support (rendering of LaTeX)"
msgstr ""
-#: conf/markup.py:48
+#: conf/markup.py:41
#, python-format
msgid ""
"If you enable this feature, <a href=\"%(url)s\">mathjax</a> must be "
-"installed in directory %(dir)s"
+"installed on your server in its own directory."
msgstr ""
-#: conf/markup.py:63
+#: conf/markup.py:55
msgid "Base url of MathJax deployment"
msgstr ""
-#: conf/markup.py:65
+#: conf/markup.py:57
msgid ""
"Note - <strong>MathJax is not included with askbot</strong> - you should "
"deploy it yourself, preferably at a separate domain and enter url pointing "
@@ -824,6 +989,16 @@ msgstr "Cloturer les questions posées par d'autres"
msgid "Lock posts"
msgstr "Verrouiller des messages"
+#: conf/minimum_reputation.py:155
+msgid "Remove rel=nofollow from own homepage"
+msgstr ""
+
+#: conf/minimum_reputation.py:157
+msgid ""
+"When a search engine crawler will see a rel=nofollow attribute on a link - "
+"the link will not count towards the rank of the users personal site."
+msgstr ""
+
#: conf/reputation_changes.py:12
#, fuzzy
msgid "Reputation loss and gain rules"
@@ -1248,6 +1423,11 @@ msgstr ""
msgid "Minimum allowed length for screen name"
msgstr "Taille minimale du pseudo (nom d'utilisateur affiché à l'écran)"
+#: conf/user_settings.py:37
+#, fuzzy
+msgid "Name for the Anonymous user"
+msgstr "Faux email pour utilisateur anonyme"
+
#: conf/vote_rules.py:13
msgid "Limits applicable to votes and moderation flags"
msgstr "Limites applicables aux votes et aux drapeaux de modération"
@@ -1362,21 +1542,21 @@ msgid "least voted"
msgstr "popularité (↑)"
# FIXME ou "peu de votes"
-#: const/__init__.py:48 skins/default/templates/questions.html:33
+#: const/__init__.py:48 skins/default/templates/main_page/tab_bar.html:29
msgid "relevance"
msgstr "pertinence"
# FIXME
-#: const/__init__.py:55 skins/default/templates/questions.html:14
-#: skins/default/templates/user_inbox.html:47
+#: const/__init__.py:55 skins/default/templates/main_page/tab_bar.html:10
+#: skins/default/templates/user_profile/user_inbox.html:50
msgid "all"
msgstr "toutes"
-#: const/__init__.py:56 skins/default/templates/questions.html:19
+#: const/__init__.py:56 skins/default/templates/main_page/tab_bar.html:15
msgid "unanswered"
msgstr "ouvertes"
-#: const/__init__.py:57 skins/default/templates/questions.html:25
+#: const/__init__.py:57 skins/default/templates/main_page/tab_bar.html:21
msgid "favorite"
msgstr "favorite"
@@ -1388,155 +1568,159 @@ msgstr "Cette question n'a pas de réponse"
msgid "Question has no accepted answers"
msgstr "Cette question n'a pas de réponse acceptée"
-#: const/__init__.py:112
+#: const/__init__.py:113
msgid "asked a question"
msgstr "a posé une question"
-#: const/__init__.py:113
+#: const/__init__.py:114
msgid "answered a question"
msgstr "a répondu à une question"
-#: const/__init__.py:114
+#: const/__init__.py:115
msgid "commented question"
msgstr "question commentée"
-#: const/__init__.py:115
+#: const/__init__.py:116
msgid "commented answer"
msgstr "réponse commentée"
-#: const/__init__.py:116
+#: const/__init__.py:117
msgid "edited question"
msgstr "question modifiée"
-#: const/__init__.py:117
+#: const/__init__.py:118
msgid "edited answer"
msgstr "réponse modifiée"
-#: const/__init__.py:118
+#: const/__init__.py:119
msgid "received award"
msgstr "récompense obtenue"
# FIXME ou "ayant reçu une récompense"
-#: const/__init__.py:119
+#: const/__init__.py:120
msgid "marked best answer"
msgstr "marquée comme meilleure réponse"
# FIXME ou "élue meilleure réponse"
-#: const/__init__.py:120
+#: const/__init__.py:121
msgid "upvoted"
msgstr "notée positivement"
# FIXME ou "ayant reçu un vote positif"
-#: const/__init__.py:121
+#: const/__init__.py:122
msgid "downvoted"
msgstr "notée négativement"
# FIXME ou "ayant reçu un vote négatif"
-#: const/__init__.py:122
+#: const/__init__.py:123
msgid "canceled vote"
msgstr "vote annulé"
-#: const/__init__.py:123
+#: const/__init__.py:124
msgid "deleted question"
msgstr "question supprimée"
-#: const/__init__.py:124
+#: const/__init__.py:125
msgid "deleted answer"
msgstr "réponse supprimée"
-#: const/__init__.py:125
+#: const/__init__.py:126
msgid "marked offensive"
msgstr "signalée comme ayant un \"contenu abusif\""
# FXME ou "offensive" ?
-#: const/__init__.py:126
+#: const/__init__.py:127
msgid "updated tags"
msgstr "Mots-clés"
# FIXME ou "marqueurs sémantiques mis à jour ?"
-#: const/__init__.py:127
+#: const/__init__.py:128
msgid "selected favorite"
msgstr "sélectionnée comme \"favorite\""
-#: const/__init__.py:128
+#: const/__init__.py:129
msgid "completed user profile"
msgstr "profil utilisateur entièrement renseigné"
# FIXME
-#: const/__init__.py:129
+#: const/__init__.py:130
msgid "email update sent to user"
msgstr "Mise à jour d'email envoyée à l'utilisateur"
-#: const/__init__.py:130
+#: const/__init__.py:131
msgid "mentioned in the post"
msgstr "mentionné dans le message"
-#: const/__init__.py:181
+#: const/__init__.py:182
msgid "question_answered"
msgstr "question_repondue"
-#: const/__init__.py:182
+#: const/__init__.py:183
msgid "question_commented"
msgstr "question_commentee"
-#: const/__init__.py:183
+#: const/__init__.py:184
msgid "answer_commented"
msgstr "reponse_commentee"
-#: const/__init__.py:184
+#: const/__init__.py:185
msgid "answer_accepted"
msgstr "reponse_acceptee"
-#: const/__init__.py:188
+#: const/__init__.py:189
msgid "[closed]"
msgstr "[close]"
-#: const/__init__.py:189
+#: const/__init__.py:190
msgid "[deleted]"
msgstr "[supprimée]"
-#: const/__init__.py:190 views/readers.py:602
+#: const/__init__.py:191 views/readers.py:561
msgid "initial version"
msgstr "version initiale"
# FIXME
-#: const/__init__.py:191
+#: const/__init__.py:192
msgid "retagged"
msgstr "dont les mots-clés ont été révisés"
-#: const/__init__.py:196
-msgid "exclude ignored tags"
-msgstr "exclure les mots-clés ignorés"
-
-#: const/__init__.py:197
-msgid "allow only selected tags"
-msgstr "autoriser uniquement les mots-clés sélectionnés"
+#: const/__init__.py:200
+msgid "off"
+msgstr "désactivé"
#: const/__init__.py:201
+msgid "exclude ignored"
+msgstr "exclure ceux ignorés"
+
+#: const/__init__.py:202
+msgid "only selected"
+msgstr "seulement ceux sélectionnés"
+
+#: const/__init__.py:206
msgid "instantly"
msgstr "instantanément"
-#: const/__init__.py:202
+#: const/__init__.py:207
msgid "daily"
msgstr "quotidien"
-#: const/__init__.py:203
+#: const/__init__.py:208
msgid "weekly"
msgstr "hebdomadaire"
-#: const/__init__.py:204
+#: const/__init__.py:209
msgid "no email"
msgstr "Aucun email"
-#: const/__init__.py:241 skins/default/templates/badges.html:42
+#: const/__init__.py:246 skins/default/templates/badges.html:37
msgid "gold"
msgstr "or"
-#: const/__init__.py:242 skins/default/templates/badges.html:51
+#: const/__init__.py:247 skins/default/templates/badges.html:46
msgid "silver"
msgstr "argent"
-#: const/__init__.py:243 skins/default/templates/badges.html:58
+#: const/__init__.py:248 skins/default/templates/badges.html:53
msgid "bronze"
msgstr "bronze"
@@ -1545,12 +1729,12 @@ msgstr "bronze"
msgid "First time here? Check out the <a href=\"%s\">FAQ</a>!"
msgstr "Vous êtes nouveau ? Commencez par lire notre <a href=\"%s\">FAQ</a> !"
-#: const/message_keys.py:22 skins/default/templates/questions.html:31
+#: const/message_keys.py:22 skins/default/templates/main_page/tab_bar.html:27
#, fuzzy
msgid "most relevant questions"
msgstr "Merci de poser une question pertinente."
-#: const/message_keys.py:23 skins/default/templates/questions.html:32
+#: const/message_keys.py:23 skins/default/templates/main_page/tab_bar.html:28
#, fuzzy
msgid "click to see most relevant questions"
msgstr "Cliquez ici pour voir les questions ayant obtenu le plus de votes"
@@ -1611,212 +1795,212 @@ msgstr "par votes"
msgid "click to see most voted questions"
msgstr "Cliquez ici pour voir les questions ayant obtenu le plus de votes"
-#: deps/django_authopenid/forms.py:116 deps/django_authopenid/views.py:136
+#: deps/django_authopenid/forms.py:110 deps/django_authopenid/views.py:134
msgid "i-names are not supported"
msgstr "Les i-names ne sont pas supportés."
-#: deps/django_authopenid/forms.py:237
+#: deps/django_authopenid/forms.py:231
#, fuzzy, python-format
msgid "Please enter your %(username_token)s"
msgstr "Veuillez saisir votre nom d'utilisateur"
-#: deps/django_authopenid/forms.py:263
+#: deps/django_authopenid/forms.py:257
#, fuzzy
msgid "Please, enter your user name"
msgstr "Veuillez saisir votre nom d'utilisateur"
# TODO "votre" ou "un" ?
-#: deps/django_authopenid/forms.py:267
+#: deps/django_authopenid/forms.py:261
#, fuzzy
msgid "Please, enter your password"
msgstr "Veuillez saisir votre mot de passe"
# TODO "votre" ou "un" ?
-#: deps/django_authopenid/forms.py:274 deps/django_authopenid/forms.py:278
+#: deps/django_authopenid/forms.py:268 deps/django_authopenid/forms.py:272
#, fuzzy
msgid "Please, enter your new password"
msgstr "Veuillez saisir votre mot de passe"
-#: deps/django_authopenid/forms.py:289
+#: deps/django_authopenid/forms.py:283
msgid "Passwords did not match"
msgstr ""
-#: deps/django_authopenid/forms.py:301
+#: deps/django_authopenid/forms.py:295
#, python-format
msgid "Please choose password > %(len)s characters"
msgstr ""
-#: deps/django_authopenid/forms.py:336
+#: deps/django_authopenid/forms.py:330
msgid "Current password"
msgstr "Mot de passe actuel"
-#: deps/django_authopenid/forms.py:347
+#: deps/django_authopenid/forms.py:341
msgid ""
"Old password is incorrect. Please enter the correct "
"password."
msgstr ""
"L'ancien mot de passe est erroné. Veuillez le corriger."
-#: deps/django_authopenid/forms.py:400
+#: deps/django_authopenid/forms.py:394
msgid "Sorry, we don't have this email address in the database"
msgstr ""
-#: deps/django_authopenid/forms.py:435
+#: deps/django_authopenid/forms.py:430
msgid "Your user name (<i>required</i>)"
msgstr "Votre nom d'utilisateur (<i>obligatoire</i>)"
-#: deps/django_authopenid/forms.py:450
+#: deps/django_authopenid/forms.py:445
msgid "Incorrect username."
msgstr "Nom d'utilisateur incorrect."
-#: deps/django_authopenid/urls.py:10 deps/django_authopenid/urls.py:11
-#: deps/django_authopenid/urls.py:12 deps/django_authopenid/urls.py:15
-#: deps/django_authopenid/urls.py:18 setup_templates/settings.py:181
+#: deps/django_authopenid/urls.py:9 deps/django_authopenid/urls.py:10
+#: deps/django_authopenid/urls.py:11 deps/django_authopenid/urls.py:14
+#: deps/django_authopenid/urls.py:17 setup_templates/settings.py:201
msgid "signin/"
msgstr "connexion/"
-#: deps/django_authopenid/urls.py:11
+#: deps/django_authopenid/urls.py:10
msgid "newquestion/"
msgstr "nouvelle_question/"
-#: deps/django_authopenid/urls.py:12
+#: deps/django_authopenid/urls.py:11
msgid "newanswer/"
msgstr "nouvelle_reponse/"
-#: deps/django_authopenid/urls.py:13
+#: deps/django_authopenid/urls.py:12
msgid "signout/"
msgstr "deconnexion/"
-#: deps/django_authopenid/urls.py:15
+#: deps/django_authopenid/urls.py:14
msgid "complete/"
msgstr "termine/"
-#: deps/django_authopenid/urls.py:18
+#: deps/django_authopenid/urls.py:17
#, fuzzy
msgid "complete-oauth/"
msgstr "termine/"
-#: deps/django_authopenid/urls.py:22
+#: deps/django_authopenid/urls.py:21
msgid "register/"
msgstr "enregistrement/"
-#: deps/django_authopenid/urls.py:24
+#: deps/django_authopenid/urls.py:23
msgid "signup/"
msgstr "inscription/"
-#: deps/django_authopenid/urls.py:32
+#: deps/django_authopenid/urls.py:31
#, fuzzy
msgid "recover/"
msgstr "reouvrir/"
-#: deps/django_authopenid/util.py:196
+#: deps/django_authopenid/util.py:214
#, fuzzy, python-format
msgid "%(site)s user name and password"
msgstr "Veuillez saisir votre nom d'utilisateur et un mot de passe"
-#: deps/django_authopenid/util.py:202
-#: skins/default/templates/authopenid/signin.html:124
+#: deps/django_authopenid/util.py:220
+#: skins/default/templates/authopenid/signin.html:99
msgid "Create a password-protected account"
msgstr ""
-#: deps/django_authopenid/util.py:203
+#: deps/django_authopenid/util.py:221
#, fuzzy
msgid "Change your password"
msgstr "Changer de mot de passe"
-#: deps/django_authopenid/util.py:265
+#: deps/django_authopenid/util.py:283
msgid "Sign in with Yahoo"
msgstr ""
-#: deps/django_authopenid/util.py:272
+#: deps/django_authopenid/util.py:290
#, fuzzy
msgid "AOL screen name"
msgstr "Pseudo"
-#: deps/django_authopenid/util.py:280
+#: deps/django_authopenid/util.py:298
#, fuzzy
msgid "OpenID url"
msgstr "URL OpenID:"
-#: deps/django_authopenid/util.py:297
+#: deps/django_authopenid/util.py:315
#, fuzzy
msgid "MyOpenid user name"
msgstr "par nom d'utilisateur"
-#: deps/django_authopenid/util.py:305 deps/django_authopenid/util.py:313
+#: deps/django_authopenid/util.py:323
#, fuzzy
msgid "Flickr user name"
msgstr "Nom d'utilisateur"
-#: deps/django_authopenid/util.py:321
+#: deps/django_authopenid/util.py:331
#, fuzzy
msgid "Technorati user name"
msgstr "choisissez un nom d'utilisateur"
-#: deps/django_authopenid/util.py:329
+#: deps/django_authopenid/util.py:339
msgid "WordPress blog name"
msgstr ""
-#: deps/django_authopenid/util.py:337
+#: deps/django_authopenid/util.py:347
msgid "Blogger blog name"
msgstr ""
-#: deps/django_authopenid/util.py:345
+#: deps/django_authopenid/util.py:355
msgid "LiveJournal blog name"
msgstr ""
-#: deps/django_authopenid/util.py:353
+#: deps/django_authopenid/util.py:363
#, fuzzy
msgid "ClaimID user name"
msgstr "Nom d'utilisateur"
-#: deps/django_authopenid/util.py:361
+#: deps/django_authopenid/util.py:371
#, fuzzy
msgid "Vidoop user name"
msgstr "Nom d'utilisateur"
-#: deps/django_authopenid/util.py:369
+#: deps/django_authopenid/util.py:379
#, fuzzy
msgid "Verisign user name"
msgstr "Nom d'utilisateur"
-#: deps/django_authopenid/util.py:393
+#: deps/django_authopenid/util.py:403
#, fuzzy, python-format
msgid "Change your %(provider)s password"
msgstr "Changer de mot de passe"
-#: deps/django_authopenid/util.py:397
+#: deps/django_authopenid/util.py:407
#, python-format
msgid "Click to see if your %(provider)s signin still works for %(site_name)s"
msgstr ""
-#: deps/django_authopenid/util.py:406
+#: deps/django_authopenid/util.py:416
#, python-format
msgid "Create password for %(provider)s"
msgstr ""
# FIXME
-#: deps/django_authopenid/util.py:410
+#: deps/django_authopenid/util.py:420
#, fuzzy, python-format
msgid "Connect your %(provider)s account to %(site_name)s"
msgstr "Associez votre OpenID avec votre compte sur ce site"
-#: deps/django_authopenid/util.py:419
+#: deps/django_authopenid/util.py:429
#, fuzzy, python-format
msgid "Signin with %(provider)s user name and password"
msgstr "Veuillez saisir votre nom d'utilisateur et un mot de passe"
-#: deps/django_authopenid/util.py:426
+#: deps/django_authopenid/util.py:436
#, python-format
msgid "Sign in with your %(provider)s account"
msgstr ""
-#: deps/django_authopenid/views.py:143
+#: deps/django_authopenid/views.py:141
#, python-format
msgid "OpenID %(openid_url)s is invalid"
msgstr "L'OpenID %(openid_url)s est invalide"
-#: deps/django_authopenid/views.py:255 deps/django_authopenid/views.py:397
+#: deps/django_authopenid/views.py:253 deps/django_authopenid/views.py:397
#: deps/django_authopenid/views.py:425
#, python-format
msgid ""
@@ -1853,22 +2037,22 @@ msgstr ""
msgid "Sorry, this account recovery key has expired or is invalid"
msgstr ""
-#: deps/django_authopenid/views.py:576
+#: deps/django_authopenid/views.py:574
#, python-format
msgid "Login method %(provider_name)s does not exist"
msgstr ""
-#: deps/django_authopenid/views.py:582
+#: deps/django_authopenid/views.py:580
#, fuzzy
msgid "Oops, sorry - there was some error - please try again"
msgstr "désolé, les 2 mots de passe sont différents, veuillez recommencer"
-#: deps/django_authopenid/views.py:673
+#: deps/django_authopenid/views.py:671
#, python-format
msgid "Your %(provider)s login works fine"
msgstr ""
-#: deps/django_authopenid/views.py:971 deps/django_authopenid/views.py:977
+#: deps/django_authopenid/views.py:978 deps/django_authopenid/views.py:984
#, python-format
msgid "your email needs to be validated see %(details_url)s"
msgstr ""
@@ -1876,11 +2060,12 @@ msgstr ""
"id='validate_email_alert' href='%(details_url)s'>Cliquez ici</a> pour en "
"savoir plus."
-#: deps/django_authopenid/views.py:998
-msgid "Email verification subject line"
-msgstr "Vérification de votre adresse email"
+#: deps/django_authopenid/views.py:1005
+#, fuzzy, python-format
+msgid "Recover your %(site)s account"
+msgstr "Changer le mot de passe de votre compte"
-#: deps/django_authopenid/views.py:1063
+#: deps/django_authopenid/views.py:1072
msgid "Please check your email and visit the enclosed link."
msgstr ""
@@ -1888,24 +2073,24 @@ msgstr ""
msgid "Site"
msgstr "Site"
-#: deps/livesettings/values.py:107
+#: deps/livesettings/values.py:106
msgid "Base Settings"
msgstr "Paramétrage de la base de données"
-#: deps/livesettings/values.py:214
+#: deps/livesettings/values.py:213
msgid "Default value: \"\""
msgstr "Valeur par défaut: \"\""
-#: deps/livesettings/values.py:221
+#: deps/livesettings/values.py:220
msgid "Default value: "
msgstr "Valeur par défaut: "
-#: deps/livesettings/values.py:224
+#: deps/livesettings/values.py:223
#, python-format
msgid "Default value: %s"
msgstr "Valeur par défaut: %s"
-#: deps/livesettings/values.py:589
+#: deps/livesettings/values.py:588
#, python-format
msgid "Allowed image file types are %(types)s"
msgstr "Les types de fichiers image autorisés sont %(types)s"
@@ -1921,7 +2106,7 @@ msgstr "Documentation"
#: deps/livesettings/templates/livesettings/group_settings.html:11
#: deps/livesettings/templates/livesettings/site_settings.html:23
-#: skins/default/templates/authopenid/signin.html:142
+#: skins/default/templates/authopenid/signin.html:117
msgid "Change password"
msgstr "Changer de mot de passe"
@@ -2016,28 +2201,59 @@ msgstr "Impossible de se connecter au service externe reCaptcha."
msgid "Invalid request"
msgstr "Requête invalide"
-#: importers/stackexchange/management/commands/load_stackexchange.py:126
+#: importers/stackexchange/management/commands/load_stackexchange.py:128
msgid "Congratulations, you are now an Administrator"
msgstr "Félicitations, vous êtes maintenant administrateur"
-#: management/commands/send_email_alerts.py:105
+#: management/commands/post_emailed_questions.py:34
+msgid ""
+"<p>To ask by email, please:</p>\n"
+"<ul>\n"
+" <li>Format the subject line as: [Tag1; Tag2] Question title</li>\n"
+" <li>Type details of your question into the email body</li>\n"
+"</ul>\n"
+"<p>Note that tags may consist of more than one word, and tags\n"
+"may be separated by a semicolon or a comma</p>\n"
+msgstr ""
+
+#: management/commands/post_emailed_questions.py:54
+#, python-format
+msgid ""
+"<p>Sorry, there was an error posting your question please contact the "
+"%(site)s administrator</p>"
+msgstr ""
+
+#: management/commands/post_emailed_questions.py:60
+#, python-format
+msgid ""
+"<p>Sorry, in order to post questions on %(site)s by email, please <a href="
+"\"%(url)s\">register first</a></p>"
+msgstr ""
+
+#: management/commands/post_emailed_questions.py:68
+msgid ""
+"<p>Sorry, your question could not be posted due to insufficient privileges "
+"of your user account</p>"
+msgstr ""
+
+#: management/commands/send_email_alerts.py:103
#, python-format
msgid "\" and \"%s\""
msgstr ""
-#: management/commands/send_email_alerts.py:108
+#: management/commands/send_email_alerts.py:106
#, fuzzy
msgid "\" and more"
msgstr "En savoir plus."
-#: management/commands/send_email_alerts.py:113
+#: management/commands/send_email_alerts.py:111
#, python-format
msgid "%(question_count)d updated question about %(topics)s"
msgid_plural "%(question_count)d updated questions about %(topics)s"
msgstr[0] ""
msgstr[1] ""
-#: management/commands/send_email_alerts.py:467
+#: management/commands/send_email_alerts.py:484
#, 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"
@@ -2048,11 +2264,11 @@ msgstr[1] ""
"<p>Bonjour %(name)s,</p><p>Il y a du nouveau concernant %(num)d questions:</"
"p>"
-#: management/commands/send_email_alerts.py:484
+#: management/commands/send_email_alerts.py:501
msgid "new question"
msgstr "nouvelle question"
-#: management/commands/send_email_alerts.py:501
+#: management/commands/send_email_alerts.py:518
msgid ""
"Please visit the askbot and see what's new! Could you spread the word about "
"it - can somebody you know help answering those questions or benefit from "
@@ -2063,7 +2279,7 @@ msgstr ""
"quelqu'un susceptible de nous aider en répondant à certaines questions, ou "
"qui pourrait bénéficier de notre forum en y postant ses propres questions..."
-#: management/commands/send_email_alerts.py:513
+#: management/commands/send_email_alerts.py:530
msgid ""
"Your most frequent subscription setting is 'daily' on selected questions. If "
"you are receiving more than one email per dayplease tell about this issue to "
@@ -2073,7 +2289,7 @@ msgstr ""
"mails quotidiennement. Si vous recevez plus d'un email par jour, merci "
"d'avertir l'administrateur du forum de ce problème. "
-#: management/commands/send_email_alerts.py:519
+#: management/commands/send_email_alerts.py:536
msgid ""
"Your most frequent subscription setting is 'weekly' if you are receiving "
"this email more than once a week please report this issue to the askbot "
@@ -2083,7 +2299,7 @@ msgstr ""
"mails de façon hebdomadaire. Si vous recevez plus d'un email par semaine, "
"merci d'avertir l'administrateur du forum de ce problème. "
-#: management/commands/send_email_alerts.py:525
+#: management/commands/send_email_alerts.py:542
msgid ""
"There is a chance that you may be receiving links seen before - due to a "
"technicality that will eventually go away. "
@@ -2091,7 +2307,7 @@ msgstr ""
"Il est possible que vous receviez des liens plusieurs fois; nous sommes en "
"train de plancher sur ce problème"
-#: management/commands/send_email_alerts.py:530
+#: management/commands/send_email_alerts.py:548
#, python-format
msgid ""
"go to %(email_settings_link)s to change frequency of email updates or "
@@ -2101,7 +2317,7 @@ msgstr ""
"emails de mises à jour, ou bien informez l'administrateur à l'adresse "
"%(admin_email)s"
-#: models/__init__.py:170
+#: models/__init__.py:299
msgid ""
"Sorry, you cannot accept or unaccept best answers because your account is "
"blocked"
@@ -2109,7 +2325,7 @@ msgstr ""
"Désolé, vous ne pouvez pas accepter ou refuser les meilleures réponses car "
"votre compte est bloqué"
-#: models/__init__.py:175
+#: models/__init__.py:304
msgid ""
"Sorry, you cannot accept or unaccept best answers because your account is "
"suspended"
@@ -2117,14 +2333,14 @@ msgstr ""
"Désolé, vous ne pouvez pas accepter ou refuser les meilleures réponses car "
"votre compte est suspendu"
-#: models/__init__.py:181
+#: models/__init__.py:310
msgid ""
"Sorry, you cannot accept or unaccept your own answer to your own question"
msgstr ""
"Désolé, vous ne pouvez pas accepter ou rejeter votre propre réponse à votre "
"propre question !"
-#: models/__init__.py:188
+#: models/__init__.py:317
#, python-format
msgid ""
"Sorry, only original author of the question - %(username)s - can accept the "
@@ -2133,38 +2349,38 @@ msgstr ""
"Désolé, seul l'auteur d'origine de la question - %(username)s - peut "
"accepter/désigner la meilleure réponse"
-#: models/__init__.py:211
+#: models/__init__.py:340
msgid "cannot vote for own posts"
msgstr "Il est interdit de voter pour ses propores publications"
-#: models/__init__.py:214
+#: models/__init__.py:343
msgid "Sorry your account appears to be blocked "
msgstr "Désolé, votre compte semble être bloqué"
-#: models/__init__.py:219
+#: models/__init__.py:348
msgid "Sorry your account appears to be suspended "
msgstr "Désolé, votre compte semble être suspendu"
-#: models/__init__.py:229
+#: models/__init__.py:358
#, python-format
msgid ">%(points)s points required to upvote"
msgstr ">%(points)s points sont requis pour pouvoir voter positivement"
-#: models/__init__.py:235
+#: models/__init__.py:364
#, python-format
msgid ">%(points)s points required to downvote"
msgstr ">%(points)s points sont requis pour pouvoir voter négativement"
-#: models/__init__.py:250
+#: models/__init__.py:379
msgid "Sorry, blocked users cannot upload files"
msgstr "Désolé, les utilisateurs bloqués ne peuvent pas transférer de fichier"
-#: models/__init__.py:251
+#: models/__init__.py:380
msgid "Sorry, suspended users cannot upload files"
msgstr ""
"Désolé, les utilisateurs suspendus ne peuvent pas transférer de fichier"
-#: models/__init__.py:253
+#: models/__init__.py:382
#, python-format
msgid ""
"uploading images is limited to users with >%(min_rep)s reputation points"
@@ -2172,21 +2388,26 @@ msgstr ""
"Le transfert d'images vers notre serveur est réservé aux utilisateurs ayant "
"plus de >%(min_rep)s points de réputation"
-#: models/__init__.py:272 models/__init__.py:332 models/__init__.py:2021
+#: models/__init__.py:401 models/__init__.py:468 models/__init__.py:2344
msgid "blocked users cannot post"
msgstr "Les utilisateurs bloques ne peuvent pas publier"
-#: models/__init__.py:273 models/__init__.py:2024
+#: models/__init__.py:402 models/__init__.py:2347
msgid "suspended users cannot post"
msgstr "Les utilisateurs suspendus ne peuvent pas publier"
-#: models/__init__.py:298
+#: models/__init__.py:429
+#, python-format
msgid ""
-"Sorry, comments (except the last one) are editable only within 10 minutes "
-"from posting"
-msgstr ""
+"Sorry, comments (except the last one) are editable only within %(minutes)s "
+"minute from posting"
+msgid_plural ""
+"Sorry, comments (except the last one) are editable only within %(minutes)s "
+"minutes from posting"
+msgstr[0] ""
+msgstr[1] ""
-#: models/__init__.py:304
+#: models/__init__.py:441
#, fuzzy
msgid "Sorry, but only post owners or moderators can edit comments"
msgstr ""
@@ -2194,14 +2415,14 @@ msgstr ""
"et les modérateurs peuvent requalifier des questions supprimées (c'est à "
"dire modifier leurs mots-clés)"
-#: models/__init__.py:318
+#: models/__init__.py:454
msgid ""
"Sorry, since your account is suspended you can comment only your own posts"
msgstr ""
"Désolé, vous ne pouvez commenter que vos propres publications, car votre "
"compte est suspendu"
-#: models/__init__.py:322
+#: models/__init__.py:458
#, python-format
msgid ""
"Sorry, to comment any post a minimum reputation of %(min_rep)s points is "
@@ -2211,7 +2432,7 @@ msgstr ""
"réputation est requis. Vous pouvez toutefois commenter vos propres "
"publications et répondre à vos questions"
-#: models/__init__.py:350
+#: models/__init__.py:486
#, fuzzy
msgid ""
"This post has been deleted and can be seen only by post owners, site "
@@ -2220,7 +2441,7 @@ msgstr ""
"Ce message a été supprimé et peut seulement être consulté par ses "
"propriétaires, les administrateurs du site, et les modérateurs"
-#: models/__init__.py:367
+#: models/__init__.py:503
msgid ""
"Sorry, only moderators, site administrators and post owners can edit deleted "
"posts"
@@ -2228,18 +2449,18 @@ msgstr ""
"Désolé, seuls les modérateurs, les administrateurs du site et les "
"propriétaires des messages peuvent modifier les messages supprimés"
-#: models/__init__.py:382
+#: models/__init__.py:518
msgid "Sorry, since your account is blocked you cannot edit posts"
msgstr ""
"Désolé, vous ne pouvez pas modifier de messages, car votre compte est bloqué"
-#: models/__init__.py:386
+#: models/__init__.py:522
msgid "Sorry, since your account is suspended you can edit only your own posts"
msgstr ""
"Désolé, vous ne pouvez modifier que vos propres messages, car votre compte "
"est suspendu"
-#: models/__init__.py:391
+#: models/__init__.py:527
#, fuzzy, python-format
msgid ""
"Sorry, to edit wiki posts, a minimum reputation of %(min_rep)s is required"
@@ -2247,7 +2468,7 @@ msgstr ""
"Désolé, pour modifier les messages du wiki, un minimum de %(min_rep)s points "
"de réputation est requis"
-#: models/__init__.py:398
+#: models/__init__.py:534
#, fuzzy, python-format
msgid ""
"Sorry, to edit other people's posts, a minimum reputation of %(min_rep)s is "
@@ -2256,7 +2477,7 @@ msgstr ""
"Désolé, pour éditer les messages des autres utilisateurs, un minimum de "
"%(min_rep)s points de réputation est requis"
-#: models/__init__.py:461
+#: models/__init__.py:597
msgid ""
"Sorry, cannot delete your question since it has an upvoted answer posted by "
"someone else"
@@ -2270,19 +2491,19 @@ msgstr[1] ""
"Désolé, impossible de supprimer votre question car elle a obtenu des votes "
"positifs de la part d'autres utilisateurs"
-#: models/__init__.py:476
+#: models/__init__.py:612
msgid "Sorry, since your account is blocked you cannot delete posts"
msgstr ""
"Désolé, vous ne pouvez pas supprimer de messages car votre compte est bloqué"
-#: models/__init__.py:480
+#: models/__init__.py:616
msgid ""
"Sorry, since your account is suspended you can delete only your own posts"
msgstr ""
"Désolé, vous pouvez seulement supprimer vos propres messages car votre "
"compte est suspendu"
-#: models/__init__.py:484
+#: models/__init__.py:620
#, python-format
msgid ""
"Sorry, to deleted other people' posts, a minimum reputation of %(min_rep)s "
@@ -2291,18 +2512,18 @@ msgstr ""
"Désolé, pour supprimer les messages des autres utilisateurs, un minimum de "
"%(min_rep)s points de réputation est requis"
-#: models/__init__.py:504
+#: models/__init__.py:640
msgid "Sorry, since your account is blocked you cannot close questions"
msgstr ""
"Désolé, vous ne pouvez pas cloturer de questions car votre compte est bloqué"
-#: models/__init__.py:508
+#: models/__init__.py:644
msgid "Sorry, since your account is suspended you cannot close questions"
msgstr ""
"Désolé, vous ne pouvez pas cloturer de questions car votre compte est "
"suspendu"
-#: models/__init__.py:512
+#: models/__init__.py:648
#, python-format
msgid ""
"Sorry, to close other people' posts, a minimum reputation of %(min_rep)s is "
@@ -2311,7 +2532,7 @@ msgstr ""
"Désolé, pour cloturer les messages des autres utilisateurs, un minimum de "
"%(min_rep)s points de réputation est requis"
-#: models/__init__.py:521
+#: models/__init__.py:657
#, python-format
msgid ""
"Sorry, to close own question a minimum reputation of %(min_rep)s is required"
@@ -2319,7 +2540,7 @@ msgstr ""
"Désolé, pour clore vos propres questions, un minimum de %(min_rep)s points "
"de réputation est requis"
-#: models/__init__.py:545
+#: models/__init__.py:681
#, python-format
msgid ""
"Sorry, only administrators, moderators or post owners with reputation > "
@@ -2329,7 +2550,7 @@ msgstr ""
"messages avec plus de %(min_rep)s points de réputation peuvent réouvrir des "
"questions."
-#: models/__init__.py:551
+#: models/__init__.py:687
#, python-format
msgid ""
"Sorry, to reopen own question a minimum reputation of %(min_rep)s is required"
@@ -2337,31 +2558,31 @@ msgstr ""
"Désolé, pour réouvrir vos propres questions, un minimum de %(min_rep)s "
"points de réputation est requis"
-#: models/__init__.py:571
+#: models/__init__.py:707
msgid "cannot flag message as offensive twice"
msgstr "Un message ne peut pas être étiqueté \"abusif\" deux fois"
-#: models/__init__.py:576
+#: models/__init__.py:712
msgid "blocked users cannot flag posts"
msgstr "Les utilisateurs bloqués ne peuvent pas étiqueter les messages"
-#: models/__init__.py:578
+#: models/__init__.py:714
msgid "suspended users cannot flag posts"
msgstr "Les utilisateurs suspendus ne peuvent pas étiqueter les messages"
-#: models/__init__.py:580
+#: models/__init__.py:716
#, python-format
msgid "need > %(min_rep)s points to flag spam"
msgstr ""
"Il faut au moins %(min_rep)s points de réputation pour pouvoir étiqueter les "
"messages comme étant du spam"
-#: models/__init__.py:599
+#: models/__init__.py:735
#, python-format
msgid "%(max_flags_per_day)s exceeded"
msgstr "%(max_flags_per_day)s dépassé"
-#: models/__init__.py:614
+#: models/__init__.py:750
msgid ""
"Sorry, only question owners, site administrators and moderators can retag "
"deleted questions"
@@ -2370,20 +2591,20 @@ msgstr ""
"et les modérateurs peuvent requalifier des questions supprimées (c'est à "
"dire modifier leurs mots-clés)"
-#: models/__init__.py:621
+#: models/__init__.py:757
msgid "Sorry, since your account is blocked you cannot retag questions"
msgstr ""
"Désolé, vous ne pouvez pas requalifier une question (c'est à dire changer "
"ses mots-clés) car votre compte est bloqué"
-#: models/__init__.py:625
+#: models/__init__.py:761
msgid ""
"Sorry, since your account is suspended you can retag only your own questions"
msgstr ""
"Désolé, vous pouvez seulement requalifier vos propres questions (c'est à "
"dire changer leurs mots-clés) car votre compte est suspendu"
-#: models/__init__.py:629
+#: models/__init__.py:765
#, python-format
msgid ""
"Sorry, to retag questions a minimum reputation of %(min_rep)s is required"
@@ -2391,20 +2612,20 @@ msgstr ""
"Désolé, pour requalifier une question (c'est à dire changer ses mots-clés), "
"un minimum de %(min_rep)s points de réputation est requis"
-#: models/__init__.py:648
+#: models/__init__.py:784
msgid "Sorry, since your account is blocked you cannot delete comment"
msgstr ""
"Désolé, vous ne pouvez pas supprimer de commentaires car votre compte est "
"bloqué"
-#: models/__init__.py:652
+#: models/__init__.py:788
msgid ""
"Sorry, since your account is suspended you can delete only your own comments"
msgstr ""
"Désolé, vous pouvez seulement supprimer vos propres commentaires car votre "
"compte est suspendu"
-#: models/__init__.py:656
+#: models/__init__.py:792
#, python-format
msgid "Sorry, to delete comments reputation of %(min_rep)s is required"
msgstr ""
@@ -2412,86 +2633,91 @@ msgstr ""
"réputation est requis"
# FIXME ou "ayant reçu un vote négatif"
-#: models/__init__.py:679
+#: models/__init__.py:815
msgid "cannot revoke old vote"
msgstr "impossible de révoquer un ancien vote"
-#: models/__init__.py:1213 views/users.py:363
+#: models/__init__.py:1370
+#, fuzzy
+msgid "Anonymous"
+msgstr "anonyme"
+
+#: models/__init__.py:1456 views/users.py:362
msgid "Site Adminstrator"
msgstr "Administrateur du site"
-#: models/__init__.py:1215 views/users.py:365
+#: models/__init__.py:1458 views/users.py:364
msgid "Forum Moderator"
msgstr "Modérateur de forum"
-#: models/__init__.py:1217 views/users.py:367
+#: models/__init__.py:1460 views/users.py:366
msgid "Suspended User"
msgstr "Utilisateur suspendu"
-#: models/__init__.py:1219 views/users.py:369
+#: models/__init__.py:1462 views/users.py:368
msgid "Blocked User"
msgstr "Utilisateur bloqué"
-#: models/__init__.py:1221 views/users.py:371
+#: models/__init__.py:1464 views/users.py:370
msgid "Registered User"
msgstr "Utilisateur enregistré"
-#: models/__init__.py:1223
+#: models/__init__.py:1466
msgid "Watched User"
msgstr "Utilisateurs suivis"
-#: models/__init__.py:1225
+#: models/__init__.py:1468
msgid "Approved User"
msgstr "Utilisateur certifié"
-#: models/__init__.py:1281
+#: models/__init__.py:1524
#, fuzzy, python-format
msgid "%(username)s karma is %(reputation)s"
msgstr "Votre karma est %(reputation)s"
-#: models/__init__.py:1291
+#: models/__init__.py:1534
#, python-format
msgid "one gold badge"
msgid_plural "%(count)d gold badges"
msgstr[0] ""
msgstr[1] ""
-#: models/__init__.py:1298
+#: models/__init__.py:1541
#, fuzzy, python-format
msgid "one silver badge"
msgid_plural "%(count)d silver badges"
msgstr[0] "Badge argent - blah blah"
msgstr[1] "Badge argent - blah blah"
-#: models/__init__.py:1305
+#: models/__init__.py:1548
#, fuzzy, python-format
msgid "one bronze badge"
msgid_plural "%(count)d bronze badges"
msgstr[0] "Badge bronze - blah blah"
msgstr[1] "Badge bronze - blah blah"
-#: models/__init__.py:1316
+#: models/__init__.py:1559
#, python-format
msgid "%(item1)s and %(item2)s"
msgstr ""
-#: models/__init__.py:1320
+#: models/__init__.py:1563
#, python-format
msgid "%(user)s has %(badges)s"
msgstr ""
-#: models/__init__.py:1633 models/__init__.py:1639 models/__init__.py:1644
-#: models/__init__.py:1649
+#: models/__init__.py:1936 models/__init__.py:1942 models/__init__.py:1947
+#: models/__init__.py:1952
#, python-format
msgid "Re: \"%(title)s\""
msgstr ""
-#: models/__init__.py:1654 models/__init__.py:1659
+#: models/__init__.py:1957 models/__init__.py:1962
#, fuzzy, python-format
msgid "Question: \"%(title)s\""
msgstr "Tags de la question"
-#: models/__init__.py:1844
+#: models/__init__.py:2140
#, python-format
msgid ""
"Congratulations, you have received a badge '%(badge_name)s'. Check out <a "
@@ -2500,6 +2726,10 @@ msgstr ""
"Félicitations, vous avez reçu un badge '%(badge_name)s'. Consultez <a href="
"\"%(user_profile)s\">votre profil</a>."
+#: models/__init__.py:2319 views/commands.py:409
+msgid "Your tag subscription was saved, thanks!"
+msgstr ""
+
#: models/answer.py:105
msgid ""
"Sorry, the answer you are looking for is no longer available, because the "
@@ -2511,303 +2741,317 @@ msgstr ""
msgid "Sorry, this answer has been removed and is no longer accessible"
msgstr "Désolé, cette question a été supprimée, et n'est plus accessible."
-#: models/badges.py:128
+#: models/badges.py:129
#, fuzzy, python-format
msgid "Deleted own post with %(votes)s or more upvotes"
msgstr ""
"Suppression de son propre message avec un score de 3 votes positifs ou moins"
-#: models/badges.py:132
+#: models/badges.py:133
msgid "Disciplined"
msgstr "Discipliné"
-#: models/badges.py:150
+#: models/badges.py:151
#, fuzzy, python-format
msgid "Deleted own post with %(votes)s or more downvotes"
msgstr ""
"Suppression de son propre message avec un score de 3 votes positifs ou moins"
-#: models/badges.py:154
+#: models/badges.py:155
msgid "Peer Pressure"
msgstr "Pression des pairs"
-#: models/badges.py:173
+#: models/badges.py:174
#, python-format
msgid "Received at least %(votes)s upvote for an answer for the first time"
msgstr ""
-#: models/badges.py:177
+#: models/badges.py:178
msgid "Teacher"
msgstr "Professeur"
-#: models/badges.py:217
+#: models/badges.py:218
msgid "Supporter"
msgstr "Supporteur"
-#: models/badges.py:218
+#: models/badges.py:219
#, fuzzy
msgid "First upvote"
msgstr "Premier vote positif"
-#: models/badges.py:226
+#: models/badges.py:227
msgid "Critic"
msgstr "Critique"
-#: models/badges.py:227
+#: models/badges.py:228
#, fuzzy
msgid "First downvote"
msgstr "Premier vote négatif"
-#: models/badges.py:236
+#: models/badges.py:237
#, fuzzy
msgid "Civic Duty"
msgstr "Devoir civique"
-#: models/badges.py:237
-#, fuzzy, python-format
+#: models/badges.py:238
+#, python-format
msgid "Voted %(num)s times"
-msgstr "a obtenu 300 votes"
+msgstr "a voté %(num)s fois"
-#: models/badges.py:251
-#, fuzzy, python-format
+#: models/badges.py:252
+#, python-format
msgid "Answered own question with at least %(num)s up votes"
-msgstr "A répondu à sa propre question avec au moins 3 votes positifs"
+msgstr "A répondu à sa propre question avec au moins %(num)s votes positifs"
-#: models/badges.py:255
+#: models/badges.py:256
msgid "Self-Learner"
msgstr "Autodidacte"
-#: models/badges.py:303
-#, fuzzy
+#: models/badges.py:304
msgid "Nice Answer"
msgstr "Jolie réponse"
-#: models/badges.py:308 models/badges.py:320 models/badges.py:332
-#, fuzzy, python-format
+#: models/badges.py:309 models/badges.py:321 models/badges.py:333
+#, python-format
msgid "Answer voted up %(num)s times"
-msgstr "Réponse ayant obtenu 10 votes positifs"
+msgstr "Réponse ayant obtenu %(num)s votes positifs"
-#: models/badges.py:315
+#: models/badges.py:316
msgid "Good Answer"
msgstr "Bonné réponse"
-#: models/badges.py:327
+#: models/badges.py:328
msgid "Great Answer"
msgstr "Très bonne réponse"
-#: models/badges.py:339
+#: models/badges.py:340
msgid "Nice Question"
msgstr "Jolie question"
-#: models/badges.py:344 models/badges.py:356 models/badges.py:368
-#, fuzzy, python-format
+#: models/badges.py:345 models/badges.py:357 models/badges.py:369
+#, python-format
msgid "Question voted up %(num)s times"
-msgstr "Question ayant obtenu 10 votes positifs"
+msgstr "Question ayant obtenu %(num)s votes positifs"
-#: models/badges.py:351
+#: models/badges.py:352
msgid "Good Question"
msgstr "Bonne question"
-#: models/badges.py:363
+#: models/badges.py:364
msgid "Great Question"
msgstr "Très bonne question"
-#: models/badges.py:375
+#: models/badges.py:376
msgid "Student"
-msgstr "Schüler"
+msgstr "Etudiant"
-#: models/badges.py:380
+#: models/badges.py:381
msgid "Asked first question with at least one up vote"
-msgstr "Hat erste Frage mit mindestens einer positiven Bewertung gestellt"
+msgstr "A posté sa première question avec au moins un vote positif"
-#: models/badges.py:413
+#: models/badges.py:414
msgid "Popular Question"
msgstr "Question populaire"
-#: models/badges.py:417 models/badges.py:428 models/badges.py:440
-#, fuzzy, python-format
+#: models/badges.py:418 models/badges.py:429 models/badges.py:441
+#, python-format
msgid "Asked a question with %(views)s views"
-msgstr "A posé une question consultée plus de 1000 fois"
+msgstr "A posé une question consultée plus de %(views)s fois"
-#: models/badges.py:424
+#: models/badges.py:425
msgid "Notable Question"
msgstr "Question remarquable"
-#: models/badges.py:435
-#, fuzzy
+#: models/badges.py:436
msgid "Famous Question"
msgstr "Question célèbre"
-#: models/badges.py:449
-#, fuzzy
+#: models/badges.py:450
msgid "Asked a question and accepted an answer"
-msgstr "Cette question n'a pas de réponse acceptée"
+msgstr "A posé une question et accepté une réponse"
-#: models/badges.py:452
+#: models/badges.py:453
msgid "Scholar"
-msgstr "Lernender"
+msgstr "Scolaire"
-#: models/badges.py:494
+#: models/badges.py:495
msgid "Enlightened"
msgstr "Eclairé"
-#: models/badges.py:498
-#, fuzzy, python-format
+#: models/badges.py:499
+#, python-format
msgid "First answer was accepted with %(num)s or more votes"
-msgstr "Première question acceptée avec au moins 10 votes positifs"
+msgstr "Première question acceptée avec au moins %(num)s votes positifs"
-#: models/badges.py:506
+#: models/badges.py:507
msgid "Guru"
msgstr "Gourou"
-#: models/badges.py:509
-#, fuzzy, python-format
+#: models/badges.py:510
+#, python-format
msgid "Answer accepted with %(num)s or more votes"
-msgstr "Première question acceptée avec au moins 10 votes positifs"
+msgstr "Première question acceptée avec au moins %(num)s votes positifs"
-#: models/badges.py:517
-#, fuzzy, python-format
+#: models/badges.py:518
+#, python-format
msgid ""
"Answered a question more than %(days)s days later with at least %(votes)s "
"votes"
msgstr ""
-"A répondu à une question avec 60 jours de retard, et avec au moins 5 votes"
+"A répondu à une question avec %(days)s jours de retard, et avec au moins %(votes)s votes"
-#: models/badges.py:524
+#: models/badges.py:525
msgid "Necromancer"
msgstr "Nécromancien"
# FIXME
-#: models/badges.py:547
-#, fuzzy
+#: models/badges.py:548
msgid "Citizen Patrol"
msgstr "Patrouille citoyenne"
# FIXME
-#: models/badges.py:550
+#: models/badges.py:551
msgid "First flagged post"
msgstr "Premier message étiqueté"
-#: models/badges.py:562
+#: models/badges.py:563
msgid "Cleanup"
msgstr "Nettoyage"
-#: models/badges.py:565
+#: models/badges.py:566
msgid "First rollback"
msgstr "Premier retour (retour à un précédent message)"
-#: models/badges.py:576
+#: models/badges.py:577
msgid "Pundit"
msgstr "Cador"
-#: models/badges.py:579
+#: models/badges.py:580
msgid "Left 10 comments with score of 10 or more"
msgstr "A laissé 10 commentaires avec un score de 10 ou plus"
-#: models/badges.py:611
+#: models/badges.py:612
msgid "Editor"
msgstr "Rédacteur"
# FIXME
-#: models/badges.py:614
+#: models/badges.py:615
msgid "First edit"
msgstr "Première intervention"
-#: models/badges.py:622
+#: models/badges.py:623
msgid "Associate Editor"
msgstr ""
-#: models/badges.py:626
-#, fuzzy, python-format
+#: models/badges.py:627
+#, python-format
msgid "Edited %(num)s entries"
-msgstr "A modifié 100 entrées"
+msgstr "A modifié %(num)s entrées"
-#: models/badges.py:633
+#: models/badges.py:634
msgid "Organizer"
msgstr "Organisateur"
# FIXME
-#: models/badges.py:636
+#: models/badges.py:637
msgid "First retag"
msgstr "Première requalification"
-#: models/badges.py:643
+#: models/badges.py:644
msgid "Autobiographer"
msgstr "Autobiographe"
-#: models/badges.py:646
+#: models/badges.py:647
msgid "Completed all user profile fields"
msgstr "A renseigné tous les champs de son profil utilisateur"
-#: models/badges.py:662
-#, fuzzy, python-format
+#: models/badges.py:663
+#, python-format
msgid "Question favorited by %(num)s users"
-msgstr "Question favorite de 25 utilisateurs"
+msgstr "Question favorite de %(num)s utilisateurs"
-#: models/badges.py:688
+#: models/badges.py:689
msgid "Stellar Question"
msgstr "Excellente question"
-#: models/badges.py:697
+#: models/badges.py:698
msgid "Favorite Question"
msgstr "Question favorite"
-#: models/badges.py:707
+#: models/badges.py:710
msgid "Enthusiast"
msgstr ""
-#: models/badges.py:710
-msgid "Visited site every day for 30 days in a row"
+#: models/badges.py:714
+#, python-format
+msgid "Visited site every day for %(num)s days in a row"
msgstr ""
-#: models/badges.py:718
+#: models/badges.py:732
#, fuzzy
msgid "Commentator"
msgstr "Documentation"
-#: models/badges.py:721
-#, fuzzy
-msgid "Posted 10 comments"
-msgstr "ajouter des commentaires"
+#: models/badges.py:736
+#, python-format
+msgid "Posted %(num_comments)s comments"
+msgstr "A posté %(num_comments)s commentaires"
+
+#: models/badges.py:752
+msgid "Taxonomist"
+msgstr "Taxonomiste"
+
+#: models/badges.py:756
+#, python-format
+msgid "Created a tag used by %(num)s questions"
+msgstr "A créé un mot-clé (tag) utilisé par %(num)s questions"
+
+#: models/badges.py:776
+msgid "Expert"
+msgstr "Expert"
-#: models/meta.py:110
+#: models/badges.py:779
+msgid "Very active in one tag"
+msgstr "Très actif dans une catégorie de questions"
+
+#: models/meta.py:111
msgid ""
"Sorry, the comment you are looking for is no longer accessible, because the "
"parent question has been removed"
msgstr ""
-#: models/meta.py:117
+#: models/meta.py:118
msgid ""
"Sorry, the comment you are looking for is no longer accessible, because the "
"parent answer has been removed"
msgstr ""
-#: models/question.py:325
+#: models/question.py:387
msgid "Sorry, this question has been deleted and is no longer accessible"
msgstr "Désolé, cette question a été supprimée, et n'est plus accessible."
-#: models/question.py:714
+#: models/question.py:815
#, python-format
msgid "%(author)s modified the question"
msgstr "%(author)s a modifié la question"
-#: models/question.py:718
+#: models/question.py:819
#, python-format
msgid "%(people)s posted %(new_answer_count)s new answers"
msgstr ""
"Les utilisateurs %(people)s ont posté %(new_answer_count)s nouvelles réponses"
-#: models/question.py:723
+#: models/question.py:824
#, python-format
msgid "%(people)s commented the question"
msgstr "%(people)s a/ont commenté cette question"
-#: models/question.py:728
+#: models/question.py:829
#, python-format
msgid "%(people)s commented answers"
msgstr "%(people)s a/ont commenté des réponses"
-#: models/question.py:730
+#: models/question.py:831
#, python-format
msgid "%(people)s commented an answer"
msgstr "%(people)s a/ont commenté une réponse"
@@ -2835,72 +3079,72 @@ msgstr ""
"%(points)s points ont été retirés pour la contribution de %(username)s' à la "
"question \"%(question_title)s\""
-#: models/tag.py:91
+#: models/tag.py:138
msgid "interesting"
msgstr "intéressant"
-#: models/tag.py:91
+#: models/tag.py:138
msgid "ignored"
msgstr "ignoré"
-#: models/user.py:264
+#: models/user.py:261
msgid "Entire forum"
msgstr "Forum entier"
-#: models/user.py:265
+#: models/user.py:262
msgid "Questions that I asked"
msgstr "Les questions que j'ai posées"
-#: models/user.py:266
+#: models/user.py:263
msgid "Questions that I answered"
msgstr "Les questions auxquelles j'ai répondu"
-#: models/user.py:267
+#: models/user.py:264
msgid "Individually selected questions"
msgstr "questions sélectionnées individuellement"
-#: models/user.py:268
+#: models/user.py:265
msgid "Mentions and comment responses"
msgstr "Mentions et réponses aux commentaires"
-#: models/user.py:271
+#: models/user.py:268
msgid "Instantly"
msgstr "Instantanément"
-#: models/user.py:272
+#: models/user.py:269
msgid "Daily"
msgstr "Quotidien"
-#: models/user.py:273
+#: models/user.py:270
msgid "Weekly"
msgstr "hebdomadaire"
-#: models/user.py:274
+#: models/user.py:271
msgid "No email"
msgstr "Aucun email"
#: skins/default/templates/404.jinja.html:3
-#: skins/default/templates/404.jinja.html:11
+#: skins/default/templates/404.jinja.html:10
msgid "Page not found"
msgstr ""
-#: skins/default/templates/404.jinja.html:15
+#: skins/default/templates/404.jinja.html:13
msgid "Sorry, could not find the page you requested."
msgstr "Désolé, la page que vous avez demandé est introuvable."
-#: skins/default/templates/404.jinja.html:17
+#: skins/default/templates/404.jinja.html:15
msgid "This might have happened for the following reasons:"
msgstr "Ceci a pu se produire pour les raisons suivantes :"
-#: skins/default/templates/404.jinja.html:19
+#: skins/default/templates/404.jinja.html:17
msgid "this question or answer has been deleted;"
msgstr "cette question ou cette réponse a été supprimée;"
-#: skins/default/templates/404.jinja.html:20
+#: skins/default/templates/404.jinja.html:18
msgid "url has error - please check it;"
msgstr "l'URL comporte une erreur - merci de la vérifier;"
-#: skins/default/templates/404.jinja.html:21
+#: skins/default/templates/404.jinja.html:19
msgid ""
"the page you tried to visit is protected or you don't have sufficient "
"points, see"
@@ -2908,64 +3152,65 @@ msgstr ""
"la page que vous avez tenté d'afficher est protégée, ou vous n'avez pas un "
"nombre de points suffisants pour la voir"
-#: skins/default/templates/404.jinja.html:21
-#: skins/default/templates/footer.html:6
-#: skins/default/templates/question_edit_tips.html:16
-#: skins/default/templates/blocks/header_meta_links.html:52
+#: skins/default/templates/404.jinja.html:19
+#: skins/default/templates/blocks/footer.html:6
+#: skins/default/templates/blocks/header_meta_links.html:13
+#: skins/default/templates/blocks/question_edit_tips.html:15
msgid "faq"
msgstr "FAQ"
-#: skins/default/templates/404.jinja.html:22
+#: skins/default/templates/404.jinja.html:20
msgid "if you believe this error 404 should not have occured, please"
msgstr ""
"si vous pensez que cette erreur 404 n'aurait pas du se produire, merci de"
-#: skins/default/templates/404.jinja.html:23
+#: skins/default/templates/404.jinja.html:21
msgid "report this problem"
msgstr "signaler ce problème."
-#: skins/default/templates/404.jinja.html:32
-#: skins/default/templates/500.jinja.html:13
+#: skins/default/templates/404.jinja.html:30
+#: skins/default/templates/500.jinja.html:11
msgid "back to previous page"
msgstr "retour à la page précédente"
-#: skins/default/templates/404.jinja.html:33
-#: skins/default/templates/questions.html:13
+#: skins/default/templates/404.jinja.html:31
+#: skins/default/templates/main_page/tab_bar.html:9
msgid "see all questions"
msgstr "Voir toutes les questions"
-#: skins/default/templates/404.jinja.html:34
+#: skins/default/templates/404.jinja.html:32
msgid "see all tags"
msgstr "Voir tous les mots-clés"
#: skins/default/templates/500.jinja.html:3
-#: skins/default/templates/500.jinja.html:6
+#: skins/default/templates/500.jinja.html:5
msgid "Internal server error"
msgstr ""
-#: skins/default/templates/500.jinja.html:10
+#: skins/default/templates/500.jinja.html:8
msgid "system error log is recorded, error will be fixed as soon as possible"
msgstr ""
"L'erreur a été consigné dans les journaux d'erreurs système, et sera "
"corrigée dès que possible "
-#: skins/default/templates/500.jinja.html:11
+#: skins/default/templates/500.jinja.html:9
msgid "please report the error to the site administrators if you wish"
msgstr ""
"Si vous le souhaitez, vous pouvez signaler cette erreur aux administrateurs "
"du site. Merci"
-#: skins/default/templates/500.jinja.html:14
+#: skins/default/templates/500.jinja.html:12
msgid "see latest questions"
msgstr "Voir les dernières questions"
-#: skins/default/templates/500.jinja.html:15
+#: skins/default/templates/500.jinja.html:13
msgid "see tags"
msgstr "Voir les mots-clés (tags)"
-#: skins/default/templates/about.html:3 skins/default/templates/about.html:6
-msgid "About"
-msgstr "A propos"
+#: skins/default/templates/about.html:3 skins/default/templates/about.html:5
+#, python-format
+msgid "About %(site_name)s"
+msgstr "A propos de %(site_name)s"
#: skins/default/templates/answer_edit.html:4
#: skins/default/templates/answer_edit.html:10
@@ -2973,198 +3218,85 @@ msgid "Edit answer"
msgstr "Modifier la réopnse"
#: skins/default/templates/answer_edit.html:10
-#: skins/default/templates/question_edit.html:10
-#: skins/default/templates/question_retag.html:6
+#: skins/default/templates/question_edit.html:9
+#: skins/default/templates/question_retag.html:5
#: skins/default/templates/revisions.html:7
msgid "back"
msgstr "Retour"
#: skins/default/templates/answer_edit.html:15
-#: skins/default/templates/question_edit.html:14
+#: skins/default/templates/question_edit.html:11
msgid "revision"
msgstr "Version"
#: skins/default/templates/answer_edit.html:18
-#: skins/default/templates/question_edit.html:19
+#: skins/default/templates/question_edit.html:16
msgid "select revision"
msgstr "Version auswählen"
#: skins/default/templates/answer_edit.html:22
-#: skins/default/templates/question_edit.html:28
+#: skins/default/templates/question_edit.html:20
msgid "Save edit"
msgstr "Enregistrer les modifications"
#: skins/default/templates/answer_edit.html:23
-#: skins/default/templates/close.html:19
-#: skins/default/templates/feedback.html:45
-#: skins/default/templates/question_edit.html:29
-#: skins/default/templates/question_retag.html:26
-#: skins/default/templates/reopen.html:30
-#: skins/default/templates/user_edit.html:76
+#: skins/default/templates/close.html:16
+#: skins/default/templates/feedback.html:42
+#: skins/default/templates/question_edit.html:21
+#: skins/default/templates/question_retag.html:23
+#: skins/default/templates/reopen.html:27
+#: skins/default/templates/subscribe_for_tags.html:16
#: skins/default/templates/authopenid/changeemail.html:38
+#: skins/default/templates/user_profile/user_edit.html:84
msgid "Cancel"
msgstr "Annuler"
-#: skins/default/templates/answer_edit.html:59
#: skins/default/templates/answer_edit.html:62
-#: skins/default/templates/ask.html:36 skins/default/templates/ask.html:39
-#: skins/default/templates/macros.html:444
-#: skins/default/templates/question.html:465
-#: skins/default/templates/question.html:468
-#: skins/default/templates/question_edit.html:63
-#: skins/default/templates/question_edit.html:66
+#: skins/default/templates/answer_edit.html:65
+#: skins/default/templates/ask.html:43 skins/default/templates/ask.html:46
+#: skins/default/templates/macros.html:592
+#: skins/default/templates/question.html:474
+#: skins/default/templates/question.html:477
+#: skins/default/templates/question_edit.html:62
+#: skins/default/templates/question_edit.html:65
msgid "hide preview"
msgstr "Masquer l'aperçu"
-#: skins/default/templates/answer_edit.html:62
-#: skins/default/templates/ask.html:39
-#: skins/default/templates/question.html:468
-#: skins/default/templates/question_edit.html:66
+#: skins/default/templates/answer_edit.html:65
+#: skins/default/templates/ask.html:46
+#: skins/default/templates/question.html:477
+#: skins/default/templates/question_edit.html:65
msgid "show preview"
msgstr "Afficher l'aperçu"
-# FIXME
-#: skins/default/templates/answer_edit_tips.html:3
-msgid "answer tips"
-msgstr "Conseils pour répondre"
-
-#: skins/default/templates/answer_edit_tips.html:6
-msgid "please make your answer relevant to this community"
-msgstr ""
-"Rédiger vos réponses afin qu'elles soient pertinentes pour la communauté."
-
-#: skins/default/templates/answer_edit_tips.html:9
-msgid "try to give an answer, rather than engage into a discussion"
-msgstr ""
-"Contentez-vous de donner une réponse, plutôt que de vous engagez dans une "
-"discussion."
-
-#: skins/default/templates/answer_edit_tips.html:12
-msgid "please try to provide details"
-msgstr "Fournissez un maximum de détails."
-
-#: skins/default/templates/answer_edit_tips.html:15
-#: skins/default/templates/question_edit_tips.html:12
-msgid "be clear and concise"
-msgstr "Soyez clair et concis."
-
-#: skins/default/templates/answer_edit_tips.html:19
-#: skins/default/templates/question_edit_tips.html:16
-msgid "see frequently asked questions"
-msgstr "lisez notre FAQ (Foire aux questions)"
-
-#: skins/default/templates/answer_edit_tips.html:25
-#: skins/default/templates/question_edit_tips.html:22
-msgid "Markdown tips"
-msgstr "Aide sur les balises \"Markdown\""
-
-#: skins/default/templates/answer_edit_tips.html:29
-#: skins/default/templates/question_edit_tips.html:26
-msgid "*italic*"
-msgstr "*italique*"
-
-#: skins/default/templates/answer_edit_tips.html:32
-#: skins/default/templates/question_edit_tips.html:29
-msgid "**bold**"
-msgstr "**gras**"
-
-#: skins/default/templates/answer_edit_tips.html:36
-#: skins/default/templates/question_edit_tips.html:33
-msgid "*italic* or _italic_"
-msgstr "*italique* ou __italique__"
-
-#: skins/default/templates/answer_edit_tips.html:39
-#: skins/default/templates/question_edit_tips.html:36
-msgid "**bold** or __bold__"
-msgstr "**gras** ou __gras__"
-
-#: skins/default/templates/answer_edit_tips.html:43
-#: skins/default/templates/question_edit_tips.html:40
-msgid "link"
-msgstr "lien"
-
-#: skins/default/templates/answer_edit_tips.html:43
-#: skins/default/templates/answer_edit_tips.html:47
-#: skins/default/templates/question_edit_tips.html:40
-#: skins/default/templates/question_edit_tips.html:45
-msgid "text"
-msgstr "texte"
-
-#: skins/default/templates/answer_edit_tips.html:47
-#: skins/default/templates/question_edit_tips.html:45
-msgid "image"
-msgstr "image"
-
-#: skins/default/templates/answer_edit_tips.html:51
-#: skins/default/templates/question_edit_tips.html:49
-msgid "numbered list:"
-msgstr "liste numérotée:"
-
-#: skins/default/templates/answer_edit_tips.html:56
-#: skins/default/templates/question_edit_tips.html:54
-msgid "basic HTML tags are also supported"
-msgstr "les balises HTML élémentaires sont aussi supportées."
-
-#: skins/default/templates/answer_edit_tips.html:60
-#: skins/default/templates/question_edit_tips.html:58
-msgid "learn more about Markdown"
-msgstr "en savoir plus sur les balises \"Markdown\""
-
-#: skins/default/templates/ask.html:3
+#: skins/default/templates/ask.html:4
msgid "Ask a question"
msgstr "Poser une question"
-#: skins/default/templates/ask_form.html:7
-msgid "login to post question info"
-msgstr ""
-"<span class=\"strong big\">Formulez votre question à l'aide du formulaire ci-"
-"dessous (un court titre résumant la question, puis la question à proprement "
-"parler, aussi détaillée que vous le souhaitez...)</span>. A l'étape "
-"suivante, vous devrez saisir votre email et votre nom (ou un pseudo si vous "
-"souhaitez rester anonyme...). Ces éléments sont nécessaires pour bénéficier "
-"des fonctionnalités de notre module de questions/réponses, qui repose sur un "
-"principe communautaire."
-
-#: skins/default/templates/ask_form.html:11
+#: skins/default/templates/badge.html:4 skins/default/templates/badge.html:8
+#: skins/default/templates/user_profile/user_recent.html:16
+#: skins/default/templates/user_profile/user_stats.html:106
#, python-format
-msgid ""
-"must have valid %(email)s to post, \n"
-" see %(email_validation_faq_url)s\n"
-" "
-msgstr ""
-"<span class='strong big'>Ihre E-Mail-Adresse %(email)s wurde noch nicht "
-"bestätigt.</span> Um Beiträge veröffentlichen zu können, müssen Sie Ihre E-"
-"Mail-Adresse bestätigen. <a href='%(email_validation_faq_url)s'>Mehr infos "
-"hier</a>.<br>Sie können Ihren Beitrag speichern und die Bestätigung danach "
-"durchführen - Ihr Beitrag wird bis dahin gespeichert."
-
-#: skins/default/templates/ask_form.html:27
-msgid "Login/signup to post your question"
-msgstr "Vous devez vous authentifier pour publier votre question "
-
-#: skins/default/templates/ask_form.html:29
-msgid "Ask your question"
-msgstr "Poser votre question"
-
-#: skins/default/templates/badge.html:4 skins/default/templates/badge.html:11
-#: skins/default/templates/user_recent.html:13
-#: skins/default/templates/user_stats.html:88
-#, fuzzy, python-format
msgid "%(name)s"
-msgstr "le %(date)s"
+msgstr "%(name)s"
-#: skins/default/templates/badge.html:4 skins/default/templates/badge.html:7
+#: skins/default/templates/badge.html:4
msgid "Badge"
msgstr "Badge"
-#: skins/default/templates/badge.html:11
-#: skins/default/templates/user_recent.html:13
-#: skins/default/templates/user_stats.html:88
-#, fuzzy, python-format
+#: skins/default/templates/badge.html:6
+#, python-format
+msgid "Badge \"%(name)s\""
+msgstr "Badge \"%(name)s\""
+
+#: skins/default/templates/badge.html:8
+#: skins/default/templates/user_profile/user_recent.html:16
+#: skins/default/templates/user_profile/user_stats.html:106
+#, python-format
msgid "%(description)s"
-msgstr "Abonnements aux emails"
+msgstr "%(description)s"
-#: skins/default/templates/badge.html:16
+#: skins/default/templates/badge.html:13
msgid "user received this badge:"
msgid_plural "users received this badge:"
msgstr[0] "l'utilisateur a reçu ces badges:"
@@ -3174,109 +3306,85 @@ msgstr[1] "les utilisateurs ont reçu ces badges:"
msgid "Badges summary"
msgstr "Résumé badges"
-#: skins/default/templates/badges.html:6
+#: skins/default/templates/badges.html:5
msgid "Badges"
msgstr "Badges"
-#: skins/default/templates/badges.html:10
+#: skins/default/templates/badges.html:7
msgid "Community gives you awards for your questions, answers and votes."
msgstr ""
"La communauté récompense vos questions, vos réponses et vos votes en vous "
"distribuant des badges."
-#: skins/default/templates/badges.html:11
+#: skins/default/templates/badges.html:8
#, python-format
msgid ""
"Below is the list of available badges and number \n"
-" of times each type of badge has been awarded. Give us feedback at "
+"of times each type of badge has been awarded. Give us feedback at "
"%(feedback_faq_url)s.\n"
-" "
msgstr ""
"Ci-dessous figure la liste des badges disponibles et le nombre "
-"d'utilisateurs ayant reçu ces badges en récompense. <strong>Or</strong>, "
-"<strong>Argent</strong> et <strong>Bronze</strong>.\n"
-"\n"
-"Vous pouvez nous dire ce que vous en pensez sur <a "
-"href='%(feedback_faq_url)s'>cette page</a></strong>."
+"de vois qu'ils ont été attribués. Vous pouvez nous dire ce que vous en pensez sur "
+"%(feedback_faq_url)s.\n"
-#: skins/default/templates/badges.html:39
+#: skins/default/templates/badges.html:35
msgid "Community badges"
msgstr "Badges de la communauté"
-#: skins/default/templates/badges.html:42
+#: skins/default/templates/badges.html:37
msgid "gold badge: the highest honor and is very rare"
msgstr ""
-#: skins/default/templates/badges.html:45
+#: skins/default/templates/badges.html:40
msgid "gold badge description"
msgstr "Badge or - blah blah"
-#: skins/default/templates/badges.html:50
+#: skins/default/templates/badges.html:45
msgid ""
"silver badge: occasionally awarded for the very high quality contributions"
msgstr ""
-#: skins/default/templates/badges.html:54
+#: skins/default/templates/badges.html:49
msgid "silver badge description"
msgstr "Badge argent - blah blah"
-#: skins/default/templates/badges.html:57
+#: skins/default/templates/badges.html:52
msgid "bronze badge: often given as a special honor"
msgstr "Badge bronze - blah blah"
-#: skins/default/templates/badges.html:61
+#: skins/default/templates/badges.html:56
msgid "bronze badge description"
msgstr "Badge bronze - blah blah"
-#: skins/default/templates/close.html:3 skins/default/templates/close.html:6
+#: skins/default/templates/close.html:3 skins/default/templates/close.html:5
msgid "Close question"
msgstr "Question close"
-#: skins/default/templates/close.html:9
+#: skins/default/templates/close.html:6
msgid "Close the question"
msgstr "Clore la question"
-#: skins/default/templates/close.html:14
+#: skins/default/templates/close.html:11
msgid "Reasons"
msgstr "Raisons"
-#: skins/default/templates/close.html:18
+#: skins/default/templates/close.html:15
msgid "OK to close"
msgstr "OK pour clore"
-#: skins/default/templates/editor_data.html:5
-#, fuzzy, python-format
-msgid "each tag must be shorter that %(max_chars)s character"
-msgid_plural "each tag must be shorter than %(max_chars)s characters"
-msgstr[0] "Chaque mot-clé doit comporter moins de %(max_chars)d caractère"
-msgstr[1] "Chaque mot-clé doit comporter moins de %(max_chars)d caractères"
-
-#: skins/default/templates/editor_data.html:7
-#, fuzzy, python-format
-msgid "please use %(tag_count)s tag"
-msgid_plural "please use %(tag_count)s tags or less"
-msgstr[0] "Veuillez utiliser %(tag_count)d mot-clé, ou moins"
-msgstr[1] "Veuillez utiliser %(tag_count)d mots-clés, ou moins"
-
-#: skins/default/templates/editor_data.html:8
-#, fuzzy, python-format
-msgid ""
-"please use up to %(tag_count)s tags, less than %(max_chars)s characters each"
-msgstr "jusqu'à 5 tags, faisant chacun moins de 20 caractères"
-
-#: skins/default/templates/faq.html:3 skins/default/templates/faq.html.py:6
+#: skins/default/templates/faq.html:3 skins/default/templates/faq.html.py:5
msgid "FAQ"
msgstr ""
-#: skins/default/templates/faq.html:6
+#: skins/default/templates/faq.html:5
msgid "Frequently Asked Questions "
msgstr "Questions fréquemment posées"
-#: skins/default/templates/faq.html:11
+#: skins/default/templates/faq.html:6
msgid "What kinds of questions can I ask here?"
msgstr "Quel genre de questions puis-je poser ici ?"
-#: skins/default/templates/faq.html:12
+#: skins/default/templates/faq.html:7
msgid ""
"Most importanly - questions should be <strong>relevant</strong> to this "
"community."
@@ -3284,7 +3392,7 @@ msgstr ""
"Surtout, les questions doivent être <strong>pertinentes</strong> et "
"<strong>significatives</strong> pour cette communauté."
-#: skins/default/templates/faq.html:13
+#: skins/default/templates/faq.html:8
msgid ""
"Before asking the question - please make sure to use search to see whether "
"your question has alredy been answered."
@@ -3292,11 +3400,11 @@ msgstr ""
"Avant de poser une question, merci d'utiliser notre moteur de recherche afin "
"de vérifier qu'elle n'a pas déjà été posée par quelqu'un d'autre"
-#: skins/default/templates/faq.html:15
+#: skins/default/templates/faq.html:10
msgid "What questions should I avoid asking?"
msgstr "Quelles questions dois-je éviter de poser ?"
-#: skins/default/templates/faq.html:16
+#: skins/default/templates/faq.html:11
msgid ""
"Please avoid asking questions that are not relevant to this community, too "
"subjective and argumentative."
@@ -3304,11 +3412,11 @@ msgstr ""
"Evitez de poser des questions qui ne sont pas pertinentes pour cette "
"communauté, ou quisont trop subjectives ou polémiques. "
-#: skins/default/templates/faq.html:20
+#: skins/default/templates/faq.html:13
msgid "What should I avoid in my answers?"
msgstr "Que dois-je éviter dans mes réponses ?"
-#: skins/default/templates/faq.html:21
+#: skins/default/templates/faq.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 "
@@ -3319,19 +3427,19 @@ msgstr ""
"avez toutefois la possibilité de faire de brèves discussions dans le champ "
"COMMENTAIRES."
-#: skins/default/templates/faq.html:24
+#: skins/default/templates/faq.html:15
msgid "Who moderates this community?"
msgstr "Qui modère cette communauté ?"
-#: skins/default/templates/faq.html:25
+#: skins/default/templates/faq.html:16
msgid "The short answer is: <strong>you</strong>."
msgstr "Pour faire court : <strong>vous !</strong>"
-#: skins/default/templates/faq.html:26
+#: skins/default/templates/faq.html:17
msgid "This website is moderated by the users."
msgstr "Ce site est modéré par ses utilisateurs."
-#: skins/default/templates/faq.html:27
+#: skins/default/templates/faq.html:18
msgid ""
"The reputation system allows users earn the authorization to perform a "
"variety of moderation tasks."
@@ -3339,11 +3447,11 @@ msgstr ""
"Le système de réputation permet aux utilisateurs d'accumuler des points, qui "
"les autorisent ensuite à accéder à divers niveaux et tâches de modération"
-#: skins/default/templates/faq.html:32
+#: skins/default/templates/faq.html:20
msgid "How does reputation system work?"
msgstr "Comment fonctionne le système de réputation ?"
-#: skins/default/templates/faq.html:33
+#: skins/default/templates/faq.html:21
msgid "Rep system summary"
msgstr ""
"Quand une question ou une réponse est jugée positivement par le reste de la "
@@ -3351,7 +3459,7 @@ msgstr ""
"\"monter en grade\" et obtenir un pouvoir grandissant en terme de "
"possibilités de modérations. "
-#: skins/default/templates/faq.html:34
+#: skins/default/templates/faq.html:22
#, python-format
msgid ""
"For example, if you ask an interesting question or give a helpful answer, "
@@ -3374,65 +3482,50 @@ msgstr ""
"jour pour chaque question et chaque réponse. Le tableau ci-dessous indique "
"combien de points sont requis pour chaque tâche de modération. "
-#: skins/default/templates/faq.html:44
-#: skins/default/templates/user_votes.html:10
+#: skins/default/templates/faq.html:32
+#: skins/default/templates/user_profile/user_votes.html:13
msgid "upvote"
msgstr "vote positif"
-#: skins/default/templates/faq.html:49
+#: skins/default/templates/faq.html:37
msgid "use tags"
msgstr "utiliser les mots-clés (tags)"
-#: skins/default/templates/faq.html:54
+#: skins/default/templates/faq.html:42
msgid "add comments"
msgstr "ajouter des commentaires"
-#: skins/default/templates/faq.html:58
-#: skins/default/templates/user_votes.html:12
+#: skins/default/templates/faq.html:46
+#: skins/default/templates/user_profile/user_votes.html:15
msgid "downvote"
msgstr "vote négatif"
-#: skins/default/templates/faq.html:61
+#: skins/default/templates/faq.html:49
msgid "open and close own questions"
msgstr "ouvrir ou fermer ses propres questions"
-#: skins/default/templates/faq.html:65
+#: skins/default/templates/faq.html:53
msgid "retag other's questions"
msgstr ""
"requalifier les questions d'autres utilisateurs (modifier leurs mots-clés)"
-#: skins/default/templates/faq.html:70
+#: skins/default/templates/faq.html:58
msgid "edit community wiki questions"
msgstr "Modifier les questions du \"Wiki communautaire\"."
-#: skins/default/templates/faq.html:75
-#, fuzzy
+#: skins/default/templates/faq.html:63
msgid "\"edit any answer"
-msgstr "modifier n'importe quelle réponse"
+msgstr "\"modifier n'importe quelle réponse"
-#: skins/default/templates/faq.html:79
-#, fuzzy
+#: skins/default/templates/faq.html:67
msgid "\"delete any comment"
-msgstr "supprimer n'importe quel commentaire"
-
-#: skins/default/templates/faq.html:86
-msgid "how to validate email title"
-msgstr "Comment valider le titre du courriel"
-
-# FIXME
-#: skins/default/templates/faq.html:88
-#, python-format
-msgid ""
-"how to validate email info with %(send_email_key_url)s %(gravatar_faq_url)s"
-msgstr ""
-"Informations concernant la procédure de validation d'email avec "
-"%(send_email_key_url)s %(gravatar_faq_url)s"
+msgstr "\"supprimer n'importe quel commentaire"
-#: skins/default/templates/faq.html:93
+#: skins/default/templates/faq.html:70
msgid "what is gravatar"
msgstr "Qu'est ce que 'Gravatar' ?"
-#: skins/default/templates/faq.html:94
+#: skins/default/templates/faq.html:71
msgid "gravatar faq info"
msgstr ""
"Gravatar signifie (globally recognized avatar, en français avatar universel)."
@@ -3451,37 +3544,33 @@ msgstr ""
"quelques minutes quand même. 6. Vous pouvez créer autant de gravatars que "
"vous avez d’adresses e-mail."
-#: skins/default/templates/faq.html:97
+#: skins/default/templates/faq.html:72
msgid "To register, do I need to create new password?"
msgstr "Ais-je besoin de créer un nouveau mot de passe pour m'inscrire ?"
-#: skins/default/templates/faq.html:98
-#, fuzzy
+#: skins/default/templates/faq.html:73
msgid ""
"No, you don't have to. You can login through any service that supports "
"OpenID, e.g. Google, Yahoo, AOL, etc.\""
msgstr ""
"Non. Ce n'est pas obligatoire. Vous pouvez vous connecter avec n'importe "
-"quel compte compatible 'OpenID'. Vous pouvez par exemple vous connectez avez "
-"votre compte Google, Yahoo, AOL, Facebook,... si vous êtes déjà inscrit "
-"auprès de l'un de ces sites."
+"quel service compatible OpenID, ex: Google, Yahoo, AOL, etc..\""
-#: skins/default/templates/faq.html:99
-#, fuzzy
+#: skins/default/templates/faq.html:74
msgid "\"Login now!\""
-msgstr "Je me connecte immédiatement !"
+msgstr "\"Je me connecte immédiatement !\""
-#: skins/default/templates/faq.html:103
+#: skins/default/templates/faq.html:76
msgid "Why other people can edit my questions/answers?"
msgstr ""
"Pourquoi les autres utilisateurs peuvent-ils modifier mes questions ou mes "
"réponses ?"
-#: skins/default/templates/faq.html:104
+#: skins/default/templates/faq.html:77
msgid "Goal of this site is..."
msgstr "L'objectif de ce site est simple :"
-#: skins/default/templates/faq.html:104
+#: skins/default/templates/faq.html:77
msgid ""
"So questions and answers can be edited like wiki pages by experienced users "
"of this site and this improves the overall quality of the knowledge base "
@@ -3492,15 +3581,15 @@ msgstr ""
"globale de la base de connaissances qui est peu à peu constituée par notre "
"communauté."
-#: skins/default/templates/faq.html:105
+#: skins/default/templates/faq.html:78
msgid "If this approach is not for you, we respect your choice."
msgstr "Si cette approche ne vous convient pas, nous respectons votre choix."
-#: skins/default/templates/faq.html:109
+#: skins/default/templates/faq.html:80
msgid "Still have questions?"
msgstr "D'autres questions ?"
-#: skins/default/templates/faq.html:110
+#: skins/default/templates/faq.html:81
#, python-format
msgid ""
"Please ask your question at %(ask_question_url)s, help make our community "
@@ -3510,99 +3599,83 @@ msgstr ""
"nous aiderez ainsi à étoffer notre base de connaissances, dans l'intérêt de "
"toute la communauté."
-#: skins/default/templates/faq.html:112 skins/default/templates/header.html:26
-msgid "questions"
-msgstr "questions"
-
-#: skins/default/templates/faq.html:112
-msgid "."
-msgstr "."
-
#: skins/default/templates/feedback.html:3
msgid "Feedback"
msgstr "Remarques"
-#: skins/default/templates/feedback.html:6
+#: skins/default/templates/feedback.html:5
msgid "Give us your feedback!"
msgstr "Envoyez nous vos remarques !"
-#: skins/default/templates/feedback.html:12
-#, python-format
+#: skins/default/templates/feedback.html:9
+#, fuzzy, python-format
msgid ""
"\n"
-" <span class='big strong'>Dear %(user_name)s</span>, we look "
-"forward to hearing your feedback. \n"
-" Please type and send us your message below.\n"
-" "
+" <span class='big strong'>Dear %(user_name)s</span>, we look forward "
+"to hearing your feedback. \n"
+" Please type and send us your message below.\n"
+" "
msgstr ""
"\n"
"<span class='big strong'>Bonjour %(user_name)s</span>, nous sommes "
"impatients de connaître votre avis sur notre module de Questions/Réponses.\n"
"Saisissez vos remarques, critiques ou suggestions ci-dessous."
-#: skins/default/templates/feedback.html:19
+#: skins/default/templates/feedback.html:16
+#, fuzzy
msgid ""
"\n"
-" <span class='big strong'>Dear visitor</span>, we look forward to "
+" <span class='big strong'>Dear visitor</span>, we look forward to "
"hearing your feedback.\n"
-" Please type and send us your message below.\n"
-" "
+" Please type and send us your message below.\n"
+" "
msgstr ""
"\n"
"<span class='big strong'>Cher visiteur</span>, nous sommes impatients de "
"connaître votre avis sur notre module de Questions/Réponses.\n"
"Saisissez vos remarques, critiques ou suggestions ci-dessous."
-#: skins/default/templates/feedback.html:28
-#, fuzzy
+#: skins/default/templates/feedback.html:25
msgid "(please enter a valid email)"
-msgstr "Veuillez entrer une adresse email valide"
+msgstr "(veuillez entrer une adresse email valide)"
-#: skins/default/templates/feedback.html:36
+#: skins/default/templates/feedback.html:33
msgid "(this field is required)"
msgstr "(champ obligatoire)"
-#: skins/default/templates/feedback.html:44
+#: skins/default/templates/feedback.html:41
msgid "Send Feedback"
msgstr "Envoyer"
-#: skins/default/templates/footer.html:5
-#: skins/default/templates/blocks/header_meta_links.html:51
-msgid "about"
-msgstr "Qui sommes nous ?"
-
-#: skins/default/templates/footer.html:7
-msgid "privacy policy"
-msgstr "Respect de la vie privée"
-
-#: skins/default/templates/footer.html:16
-msgid "give feedback"
-msgstr "Faire une remarque"
-
-#: skins/default/templates/header.html:15
-msgid "back to home page"
-msgstr "Retour à l'accueil"
-
-#: skins/default/templates/header.html:16
-#, fuzzy, python-format
-msgid "%(site)s logo"
-msgstr "Logo du site de Questions/Réponses"
+#: skins/default/templates/import_data.html:2
+#: skins/default/templates/import_data.html:4
+msgid "Import StackExchange data"
+msgstr ""
-#: skins/default/templates/header.html:36
-msgid "users"
-msgstr "Communauté"
+#: skins/default/templates/import_data.html:13
+msgid ""
+"<em>Warning:</em> if your database is not empty, please back it up\n"
+" before attempting this operation."
+msgstr ""
-#: skins/default/templates/header.html:41
-msgid "badges"
-msgstr "Réputation"
+#: skins/default/templates/import_data.html:16
+msgid ""
+"Upload your stackexchange dump .zip file, then wait until\n"
+" the data import completes. This process may take several minutes.\n"
+" Please note that feedback will be printed in plain text.\n"
+" "
+msgstr ""
-#: skins/default/templates/header.html:46
-msgid "ask a question"
-msgstr "Poser une question"
+#: skins/default/templates/import_data.html:25
+msgid "Import data"
+msgstr ""
-#: skins/default/templates/input_bar.html:32
-msgid "search"
-msgstr "Chercher"
+#: skins/default/templates/import_data.html:27
+msgid ""
+"In the case you experience any difficulties in using this import tool,\n"
+" please try importing your data via command line: <code>python manage."
+"py load_stackexchange path/to/your-data.zip</code>"
+msgstr ""
#: skins/default/templates/instant_notification.html:1
#, python-format
@@ -3610,28 +3683,26 @@ msgid "<p>Dear %(receiving_user_name)s,</p>"
msgstr "<p>Bonjour %(receiving_user_name)s,</p>"
#: skins/default/templates/instant_notification.html:3
-#, fuzzy, python-format
+#, python-format
msgid ""
"\n"
"<p>%(update_author_name)s left a <a href=\"%(post_url)s\">new comment</a>:</"
"p>\n"
msgstr ""
"\n"
-"<p>%(update_author_name)s a laissé un <a href=\"%%(post_url)s\">nouveau "
-"commentaire</a>\n"
-"pour la question \"%(origin_post_title)s\"</p>\n"
+"<p>%(update_author_name)s a laissé <a href=\"%(post_url)s\">un nouveau commentaire</a>:</"
+"p>\n"
#: skins/default/templates/instant_notification.html:8
-#, fuzzy, python-format
+#, python-format
msgid ""
"\n"
"<p>%(update_author_name)s left a <a href=\"%(post_url)s\">new comment</a></"
"p>\n"
msgstr ""
"\n"
-"<p>%(update_author_name)s a laissé un <a href=\"%%(post_url)s\">nouveau "
-"commentaire</a>\n"
-"pour la question \"%(origin_post_title)s\"</p>\n"
+"<p>%(update_author_name)s a laissé <a href=\"%(post_url)s\">un nouveau commentaire</a></"
+"p>\n"
#: skins/default/templates/instant_notification.html:13
#, python-format
@@ -3699,143 +3770,141 @@ msgid "<p>Sincerely,<br/>Forum Administrator</p>"
msgstr ""
"<p>Salutations,<br/>L'administarteur du forum de Questions/Réponses</p>"
-#: skins/default/templates/logout.html:3 skins/default/templates/logout.html:6
+#: skins/default/templates/logout.html:3
msgid "Logout"
msgstr "Déconnexion"
-#: skins/default/templates/logout.html:9
-msgid ""
-"As a registered user you can login with your OpenID, log out of the site or "
-"permanently remove your account."
+#: skins/default/templates/logout.html:5
+msgid "You have successfully logged out"
msgstr ""
-"Etant un utilisateur enregistré, vous pouvez vous connecter avec votre "
-"OpenID, vous déconnecter du site, ou supprimer définitivement votre compte."
-#: skins/default/templates/logout.html:10
-msgid "Logout now"
-msgstr "Se déconnecter"
+#: skins/default/templates/logout.html:6
+msgid ""
+"However, you still may be logged in to your OpenID provider. Please logout "
+"of your provider if you wish to do so."
+msgstr ""
#: skins/default/templates/macros.html:26
msgid "karma:"
msgstr ""
#: skins/default/templates/macros.html:30
-#, fuzzy
msgid "badges:"
msgstr "badges :"
-#: skins/default/templates/macros.html:52
-#: skins/default/templates/macros.html:53
+#: skins/default/templates/macros.html:82
+#: skins/default/templates/macros.html:83
msgid "previous"
msgstr "page précédente"
-#: skins/default/templates/macros.html:64
+#: skins/default/templates/macros.html:94
msgid "current page"
msgstr "page actuelle"
-#: skins/default/templates/macros.html:66
-#: skins/default/templates/macros.html:73
+#: skins/default/templates/macros.html:96
+#: skins/default/templates/macros.html:103
#, python-format
msgid "page number %(num)s"
msgstr "Page %(num)s"
-#: skins/default/templates/macros.html:77
+#: skins/default/templates/macros.html:107
msgid "next page"
msgstr "page suivante"
-#: skins/default/templates/macros.html:88
+#: skins/default/templates/macros.html:118
msgid "posts per page"
msgstr "messages par page"
-#: skins/default/templates/macros.html:119 templatetags/extra_tags.py:44
+#: skins/default/templates/macros.html:150 templatetags/extra_tags.py:43
#, python-format
msgid "%(username)s gravatar image"
msgstr "Image Gravatar de %(username)s"
-#: skins/default/templates/macros.html:142
+#: skins/default/templates/macros.html:159
+#, python-format
+msgid "%(username)s's website is %(url)s"
+msgstr "Le site web de %(username)s est \"%(url)s"
+
+#: skins/default/templates/macros.html:171
+msgid "anonymous user"
+msgstr "anonyme"
+
+#: skins/default/templates/macros.html:199
msgid "this post is marked as community wiki"
msgstr ""
-#: skins/default/templates/macros.html:145
+#: skins/default/templates/macros.html:202
#, python-format
msgid ""
"This post is a wiki.\n"
" Anyone with karma &gt;%(wiki_min_rep)s is welcome to improve it."
msgstr ""
-#: skins/default/templates/macros.html:151
+#: skins/default/templates/macros.html:208
msgid "asked"
msgstr "posée"
-#: skins/default/templates/macros.html:153
+#: skins/default/templates/macros.html:210
msgid "answered"
msgstr "répondue"
-#: skins/default/templates/macros.html:155
+#: skins/default/templates/macros.html:212
msgid "posted"
msgstr "postée"
-#: skins/default/templates/macros.html:185
+#: skins/default/templates/macros.html:242
msgid "updated"
msgstr "actualisée"
-#: skins/default/templates/macros.html:210
-#: skins/default/templates/unused/questions_ajax.html:23 views/readers.py:238
+#: skins/default/templates/macros.html:309
+#, python-format
+msgid "see questions tagged '%(tag)s'"
+msgstr "Voir les questions marquées par '%(tag)s'."
+
+#: skins/default/templates/macros.html:352 views/readers.py:219
msgid "vote"
msgid_plural "votes"
msgstr[0] "vote"
msgstr[1] "votes"
-#: skins/default/templates/macros.html:227
-#: skins/default/templates/unused/questions_ajax.html:43 views/readers.py:241
+#: skins/default/templates/macros.html:369 views/readers.py:222
msgid "answer"
msgid_plural "answers"
msgstr[0] "réponse"
msgstr[1] "réponses"
-#: skins/default/templates/macros.html:239
-#: skins/default/templates/unused/questions_ajax.html:55 views/readers.py:244
+#: skins/default/templates/macros.html:380 views/readers.py:225
msgid "view"
msgid_plural "views"
msgstr[0] "vue"
msgstr[1] "vues"
-#: skins/default/templates/macros.html:251
-#: skins/default/templates/question.html:88
-#: skins/default/templates/tags.html:38
-#: skins/default/templates/unused/question_list.html:64
-#: skins/default/templates/unused/question_summary_list_roll.html:52
-#: skins/default/templates/unused/questions_ajax.html:68
-#, python-format
-msgid "see questions tagged '%(tag)s'"
-msgstr "Voir les questions marquées par '%(tag)s'."
-
-#: skins/default/templates/macros.html:267
-#: skins/default/templates/question.html:94
-#: skins/default/templates/question.html:250
+#: skins/default/templates/macros.html:409
+#: skins/default/templates/question.html:93
+#: skins/default/templates/question.html:249
#: skins/default/templates/revisions.html:37
msgid "edit"
msgstr "modifier"
-#: skins/default/templates/macros.html:272
+#: skins/default/templates/macros.html:413
msgid "delete this comment"
msgstr "Supprimer ce commentaire"
-#: skins/default/templates/macros.html:290
-#: skins/default/templates/macros.html:298
-#: skins/default/templates/question.html:432
+#: skins/default/templates/macros.html:431
+#: skins/default/templates/macros.html:439
+#: skins/default/templates/question.html:439
msgid "add comment"
msgstr "Ajouter un commentaire"
-#: skins/default/templates/macros.html:291
+#: skins/default/templates/macros.html:432
#, python-format
msgid "see <strong>%(counter)s</strong> more"
msgid_plural "see <strong>%(counter)s</strong> more"
msgstr[0] "Voir <strong>1</strong> de plus"
msgstr[1] "Voir <strong>%(counter)s</strong> de plus"
-#: skins/default/templates/macros.html:293
-#, fuzzy, python-format
+#: skins/default/templates/macros.html:434
+#, python-format
msgid "see <strong>%(counter)s</strong> more comment"
msgid_plural ""
"see <strong>%(counter)s</strong> more comments\n"
@@ -3843,99 +3912,138 @@ msgid_plural ""
msgstr[0] "Voir <strong>1</strong> commentaire de plus"
msgstr[1] "Voir <strong>%(counter)s</strong> commentaires de plus"
-#: skins/default/templates/macros.html:421
+#: skins/default/templates/macros.html:569
msgid "(required)"
msgstr "(obligatoire)"
# FIXME
-#: skins/default/templates/macros.html:442
+#: skins/default/templates/macros.html:590
msgid "Toggle the real time Markdown editor preview"
msgstr "Basculer vers l'aperçu avec éditeur temps-réel"
+#: skins/default/templates/macros.html:602
+#, python-format
+msgid "responses for %(username)s"
+msgstr "réponses pour %(username)s"
+
+#: skins/default/templates/macros.html:605
+#, python-format
+msgid "you have a new response"
+msgid_plural "you have %(response_count)s new responses"
+msgstr[0] "vous avez une nouvelle réponse"
+msgstr[1] "vous avez %(response_count)s nouvelles réponses"
+
+#: skins/default/templates/macros.html:608
+msgid "no new responses yet"
+msgstr "pas de nouvelles réponses pour l'instant"
+
+#: skins/default/templates/macros.html:623
+#: skins/default/templates/macros.html:624
+#, python-format
+msgid "%(new)s new flagged posts and %(seen)s previous"
+msgstr ""
+
+# FIXME
+#: skins/default/templates/macros.html:626
+#: skins/default/templates/macros.html:627
+#, python-format
+msgid "%(new)s new flagged posts"
+msgstr "%(new)s nouveaux messages étiquetés"
+
+# FIXME
+#: skins/default/templates/macros.html:632
+#: skins/default/templates/macros.html:633
+#, python-format
+msgid "%(seen)s flagged posts"
+msgstr "%(seen)s messages taggés"
+
+#: skins/default/templates/main_page.html:11
+msgid "Questions"
+msgstr "Questions"
+
#: skins/default/templates/privacy.html:3
-#: skins/default/templates/privacy.html:6
+#: skins/default/templates/privacy.html:5
msgid "Privacy policy"
msgstr "Politique en matière de respect de la vie privée"
-#: skins/default/templates/question.html:30
-#: skins/default/templates/question.html:31
-#: skins/default/templates/question.html:46
-#: skins/default/templates/question.html:48
+#: skins/default/templates/question.html:27
+#: skins/default/templates/question.html:28
+#: skins/default/templates/question.html:43
+#: skins/default/templates/question.html:45
msgid "i like this post (click again to cancel)"
msgstr "J'aime ce message (cliquez à nouveau pour annuler)"
-#: skins/default/templates/question.html:33
-#: skins/default/templates/question.html:50
-#: skins/default/templates/question.html:201
+#: skins/default/templates/question.html:30
+#: skins/default/templates/question.html:47
+#: skins/default/templates/question.html:200
msgid "current number of votes"
msgstr "Nombre de votes actuel"
-#: skins/default/templates/question.html:42
-#: skins/default/templates/question.html:43
-#: skins/default/templates/question.html:55
-#: skins/default/templates/question.html:56
+#: skins/default/templates/question.html:39
+#: skins/default/templates/question.html:40
+#: skins/default/templates/question.html:52
+#: skins/default/templates/question.html:53
msgid "i dont like this post (click again to cancel)"
msgstr "Je n'aime pas ce message (cliquez à nouveau pour annuler)"
-#: skins/default/templates/question.html:60
-#: skins/default/templates/question.html:61
+#: skins/default/templates/question.html:57
+#: skins/default/templates/question.html:58
msgid "mark this question as favorite (click again to cancel)"
msgstr ""
"Ajouter cette question à mes 'favoris' (cliquez à nouveau pour annuler)"
-#: skins/default/templates/question.html:67
-#: skins/default/templates/question.html:68
+#: skins/default/templates/question.html:64
+#: skins/default/templates/question.html:65
msgid "remove favorite mark from this question (click again to restore mark)"
msgstr ""
"Retirer cette question de mes 'favoris' (cliquez à nouveau pour annuler)"
-#: skins/default/templates/question.html:74
-#, fuzzy
+#: skins/default/templates/question.html:71
msgid "Share this question on twitter"
-msgstr "Réouvrir cette question"
+msgstr "Partager cette question sur twitter"
-#: skins/default/templates/question.html:75
+#: skins/default/templates/question.html:72
msgid "Share this question on facebook"
-msgstr ""
+msgstr "Partager cette question sur facebook"
# FIXME
-#: skins/default/templates/question.html:97
+#: skins/default/templates/question.html:96
msgid "retag"
msgstr "requalifier"
-#: skins/default/templates/question.html:104
+#: skins/default/templates/question.html:103
msgid "reopen"
msgstr "réouvrir"
-#: skins/default/templates/question.html:108
+#: skins/default/templates/question.html:107
msgid "close"
msgstr "fermer"
-#: skins/default/templates/question.html:113
-#: skins/default/templates/question.html:254
+#: skins/default/templates/question.html:112
+#: skins/default/templates/question.html:253
msgid ""
"report as offensive (i.e containing spam, advertising, malicious text, etc.)"
msgstr ""
"Signaler un abus (par exemple : spam, publicité déguisée, contenus illégaux "
"ou inappropriés, propos déplacés)"
-#: skins/default/templates/question.html:114
-#: skins/default/templates/question.html:255
+#: skins/default/templates/question.html:113
+#: skins/default/templates/question.html:254
msgid "flag offensive"
msgstr "Marquer comme 'contenu abusif'"
-#: skins/default/templates/question.html:121
-#: skins/default/templates/question.html:265
+#: skins/default/templates/question.html:120
+#: skins/default/templates/question.html:264
msgid "undelete"
msgstr "restaurer"
-#: skins/default/templates/question.html:121
-#: skins/default/templates/question.html:265
-#: skins/default/templates/authopenid/signin.html:175
+#: skins/default/templates/question.html:120
+#: skins/default/templates/question.html:264
+#: skins/default/templates/authopenid/signin.html:149
msgid "delete"
msgstr "Supprimer"
-#: skins/default/templates/question.html:159
+#: skins/default/templates/question.html:157
#, python-format
msgid ""
"The question has been closed for the following reason \"%(close_reason)s\" by"
@@ -3943,21 +4051,21 @@ msgstr ""
"Cette question a été close pour la raison suivante : : \"%(close_reason)s\" "
"par"
-#: skins/default/templates/question.html:161
+#: skins/default/templates/question.html:159
#, python-format
msgid "close date %(closed_at)s"
msgstr "Date de cloture : %(closed_at)s"
-#: skins/default/templates/question.html:169
-#, fuzzy, python-format
+#: skins/default/templates/question.html:165
+#, python-format
msgid ""
"\n"
-" %(counter)s Answer:\n"
-" "
+" %(counter)s Answer:\n"
+" "
msgid_plural ""
"\n"
-" %(counter)s Answers:\n"
-" "
+" %(counter)s Answers:\n"
+" "
msgstr[0] ""
"\n"
" %(counter)s réponse :"
@@ -3965,80 +4073,78 @@ msgstr[1] ""
"\n"
" %(counter)s réponses :"
-#: skins/default/templates/question.html:177
+#: skins/default/templates/question.html:173
msgid "oldest answers will be shown first"
msgstr "Les réponses les plus anciennes seront affichées en premier"
-#: skins/default/templates/question.html:177
+#: skins/default/templates/question.html:174
msgid "oldest answers"
msgstr "réponses les plus anciennes"
-#: skins/default/templates/question.html:179
+#: skins/default/templates/question.html:176
msgid "newest answers will be shown first"
msgstr "Les réponses les plus récentes seront affichées en premier"
-#: skins/default/templates/question.html:179
+#: skins/default/templates/question.html:177
msgid "newest answers"
msgstr "Réponses les plus récentes"
-#: skins/default/templates/question.html:181
+#: skins/default/templates/question.html:179
msgid "most voted answers will be shown first"
msgstr "Les réponses ayant obtenu le plus de votes seront affichées en premier"
-#: skins/default/templates/question.html:181
+#: skins/default/templates/question.html:180
msgid "popular answers"
msgstr "réponses populaires"
+#: skins/default/templates/question.html:198
#: skins/default/templates/question.html:199
-#: skins/default/templates/question.html:200
msgid "i like this answer (click again to cancel)"
msgstr "J'aime cette réponse (cliquez à nouveau pour annuler)"
+#: skins/default/templates/question.html:209
#: skins/default/templates/question.html:210
-#: skins/default/templates/question.html:211
msgid "i dont like this answer (click again to cancel)"
msgstr "Je n'aime pas cette réponse (cliquez à nouveau pour annuler)"
+#: skins/default/templates/question.html:218
#: skins/default/templates/question.html:219
-#: skins/default/templates/question.html:220
msgid "mark this answer as favorite (click again to undo)"
msgstr "marquer cette réponse comme favorite (cliquez à nouveau pour annuler)"
+#: skins/default/templates/question.html:228
#: skins/default/templates/question.html:229
-#: skins/default/templates/question.html:230
#, python-format
msgid "%(question_author)s has selected this answer as correct"
msgstr "%(question_author)s a choisi cette réponse comme correcte"
-#: skins/default/templates/question.html:245
+#: skins/default/templates/question.html:244
msgid "answer permanent link"
msgstr "lien permanent vers une réponse"
-#: skins/default/templates/question.html:246
+#: skins/default/templates/question.html:245
msgid "permanent link"
msgstr "lien permanent"
-#: skins/default/templates/question.html:315
-#: skins/default/templates/question.html:317
+#: skins/default/templates/question.html:314
+#: skins/default/templates/question.html:316
msgid "Notify me once a day when there are any new answers"
msgstr ""
"<strong>Me notifier les nouvelles réponses par email</strong> une fois par "
"jour"
-#: skins/default/templates/question.html:319
+#: skins/default/templates/question.html:318
msgid "Notify me weekly when there are any new answers"
msgstr ""
"<strong>Me notifier les nouvelles réponses par email</strong> une fois par "
"semaine"
-#: skins/default/templates/question.html:321
+#: skins/default/templates/question.html:320
#, fuzzy
msgid "Notify me immediately when there are any new answers"
-msgstr ""
-"<strong>Me notifier les nouvelles réponses par email</strong> une fois par "
-"semaine"
+msgstr "Me notifier immédiatement dès qu'il y a des nouvelles réponses"
-#: skins/default/templates/question.html:324
+#: skins/default/templates/question.html:323
#, python-format
msgid ""
"You can always adjust frequency of email updates from your %(profile_url)s"
@@ -4047,320 +4153,134 @@ msgstr ""
"<strong><a href='%(profile_url)s?sort=email_subscriptions'>votre profil</a></"
"strong> ...)"
-#: skins/default/templates/question.html:329
+#: skins/default/templates/question.html:328
msgid "once you sign in you will be able to subscribe for any updates here"
msgstr ""
"vous pourrez vous abonner aux mails de notifications de mise à jour dès que "
"vous vous serez connecté"
-#: skins/default/templates/question.html:339
+#: skins/default/templates/question.html:338
msgid "Your answer"
msgstr "Votre réponse"
-#: skins/default/templates/question.html:341
+#: skins/default/templates/question.html:340
msgid "Be the first one to answer this question!"
msgstr "Soyez le premier à répondre à cette quesion !"
-#: skins/default/templates/question.html:347
+#: skins/default/templates/question.html:346
msgid "you can answer anonymously and then login"
msgstr ""
"<span class='strong big'>Vous pouvez commencer par répondre anonymement à "
"cette question</span>, puis vous connecter ensuite "
-#: skins/default/templates/question.html:351
+#: skins/default/templates/question.html:350
msgid "answer your own question only to give an answer"
msgstr ""
"vous pouvez répondre à vos propres questions uniquement pour donner une "
"réponse"
-#: skins/default/templates/question.html:353
+#: skins/default/templates/question.html:352
msgid "please only give an answer, no discussions"
msgstr ""
"Merci de vous contenter de donner une réponse; n'instaurez pas une discussion"
-#: skins/default/templates/question.html:360
+#: skins/default/templates/question.html:359
msgid "Login/Signup to Post Your Answer"
msgstr "Connectez vous (ou Inscrivez vous) pour poster votre réponse"
-#: skins/default/templates/question.html:363
+#: skins/default/templates/question.html:362
msgid "Answer Your Own Question"
msgstr "Répondre à votre propre question"
-#: skins/default/templates/question.html:365
+#: skins/default/templates/question.html:364
msgid "Answer the question"
msgstr "Répondre à cette question"
-#: skins/default/templates/question.html:379
+#: skins/default/templates/question.html:380
msgid "Question tags"
msgstr "Tags de la question"
-#: skins/default/templates/question.html:384
-#: skins/default/templates/questions.html:221
-#: skins/default/templates/tag_selector.html:9
-#: skins/default/templates/tag_selector.html:26
-#, python-format
-msgid "see questions tagged '%(tag_name)s'"
-msgstr "Voir les questions marquées par '%(tag_name)s' "
-
-#: skins/default/templates/question.html:390
+#: skins/default/templates/question.html:397
msgid "question asked"
msgstr "question posée"
-#: skins/default/templates/question.html:393
+#: skins/default/templates/question.html:400
msgid "question was seen"
msgstr "la question a été vue:"
-#: skins/default/templates/question.html:393
+#: skins/default/templates/question.html:400
msgid "times"
msgstr "fois"
-#: skins/default/templates/question.html:396
+#: skins/default/templates/question.html:403
msgid "last updated"
msgstr "dernière mise à jour"
-#: skins/default/templates/question.html:403
+#: skins/default/templates/question.html:410
msgid "Related questions"
msgstr "Questions liées"
#: skins/default/templates/question_edit.html:4
-#: skins/default/templates/question_edit.html:10
+#: skins/default/templates/question_edit.html:9
msgid "Edit question"
msgstr "Modifier une question"
-#: skins/default/templates/question_edit_tips.html:3
-msgid "question tips"
-msgstr "conseils pour poser une question"
-
-#: skins/default/templates/question_edit_tips.html:6
-msgid "please ask a relevant question"
-msgstr "Merci de poser une question pertinente."
-
-#: skins/default/templates/question_edit_tips.html:9
-msgid "please try provide enough details"
-msgstr "Merci de fournir suffisamment de détails."
-
#: skins/default/templates/question_retag.html:3
-#: skins/default/templates/question_retag.html:6
+#: skins/default/templates/question_retag.html:5
msgid "Change tags"
msgstr "Modifier les tags"
-#: skins/default/templates/question_retag.html:25
+#: skins/default/templates/question_retag.html:22
msgid "Retag"
msgstr "Requalifier"
-#: skins/default/templates/question_retag.html:34
+#: skins/default/templates/question_retag.html:30
msgid "Why use and modify tags?"
msgstr "Pourquoi utiliser et modifier les tags ?"
-#: skins/default/templates/question_retag.html:36
+#: skins/default/templates/question_retag.html:32
msgid "Tags help to keep the content better organized and searchable"
msgstr ""
-#: skins/default/templates/question_retag.html:38
+#: skins/default/templates/question_retag.html:34
msgid "tag editors receive special awards from the community"
msgstr ""
"Les éditeurs de tags reçoivent des récompenses de la base de la communauté"
-#: skins/default/templates/question_retag.html:79
+#: skins/default/templates/question_retag.html:61
msgid "up to 5 tags, less than 20 characters each"
msgstr "jusqu'à 5 tags, faisant chacun moins de 20 caractères"
-#: skins/default/templates/questions.html:4
-msgid "Questions"
-msgstr "Questions"
-
-# ##FIXME "In: [All questions] [Opened questions]"
-# ##FIXME "Dans: [toutes les questions] [questions ouvertes]"
-# ##FIXME "Questions: [toutes] [ouvertes]" POUR GAGNER DE LA PLACE !!!
-#: skins/default/templates/questions.html:9
-msgid "In:"
-msgstr "Questions:"
-
-#: skins/default/templates/questions.html:18
-msgid "see unanswered questions"
-msgstr "Voir les questions sans réponses"
-
-#: skins/default/templates/questions.html:24
-msgid "see your favorite questions"
-msgstr "Voir vos questions favorites"
-
-#: skins/default/templates/questions.html:29
-msgid "Sort by:"
-msgstr "Trier par:"
-
-#: skins/default/templates/questions.html:96
-#: skins/default/templates/questions.html:99
-msgid "subscribe to the questions feed"
-msgstr "S'abonner au flux RSS des questions"
-
-#: skins/default/templates/questions.html:100
-msgid "rss feed"
-msgstr "flux RSS"
-
-#: skins/default/templates/questions.html:104
-#, fuzzy, python-format
-msgid ""
-"\n"
-" %(q_num)s question\n"
-" "
-msgid_plural ""
-"\n"
-" %(q_num)s questions\n"
-" "
-msgstr[0] ""
-"\n"
-" Nous avons trouvé %(q_num)s question"
-msgstr[1] ""
-"\n"
-" Nous avons trouvé %(q_num)s questions"
-
-#: skins/default/templates/questions.html:110 views/readers.py:158
-#, python-format
-msgid "%(q_num)s question"
-msgid_plural "%(q_num)s questions"
-msgstr[0] "%(q_num)s question"
-msgstr[1] "%(q_num)s questions"
-
-#: skins/default/templates/questions.html:113
-#, python-format
-msgid "with %(author_name)s's contributions"
-msgstr "avec la contribution de %(author_name)s"
-
-#: skins/default/templates/questions.html:116
-msgid "tagged"
-msgstr "marquée avec des mots-clés"
-
-#: skins/default/templates/questions.html:121
-msgid "Search tips:"
-msgstr "Conseils pour la recherche:"
-
-#: skins/default/templates/questions.html:124
-msgid "reset author"
-msgstr "Réinitialiser l'auteur"
-
-#: skins/default/templates/questions.html:126
-#: skins/default/templates/questions.html:129
-#: skins/default/templates/questions.html:167
-#: skins/default/templates/questions.html:170
-#, fuzzy
-msgid " or "
-msgstr "ou"
-
-#: skins/default/templates/questions.html:127
-msgid "reset tags"
-msgstr "Réinitialiser les tags"
-
-#: skins/default/templates/questions.html:130
-#: skins/default/templates/questions.html:133
-msgid "start over"
-msgstr "Recommencer"
-
-# FIXME
-#: skins/default/templates/questions.html:135
-msgid " - to expand, or dig in by adding more tags and revising the query."
-msgstr ""
-" - pour développer ou restreindre en ajoutant plus de tags et en révisant la "
-"requête"
-
-#: skins/default/templates/questions.html:138
-msgid "Search tip:"
-msgstr "Conseil pour la recherche:"
-
-#: skins/default/templates/questions.html:138
-msgid "add tags and a query to focus your search"
-msgstr "ajouter des tags et une requête pour affiner votre recherche"
-
-#: skins/default/templates/questions.html:153
-#: skins/default/templates/unused/questions_ajax.html:79
-msgid "There are no unanswered questions here"
-msgstr "Il n'y a aucune question sans réponse"
-
-#: skins/default/templates/questions.html:156
-#: skins/default/templates/unused/questions_ajax.html:82
-msgid "No favorite questions here. "
-msgstr "Aucune question favorite."
-
-#: skins/default/templates/questions.html:157
-#: skins/default/templates/unused/questions_ajax.html:83
-msgid "Please start (bookmark) some questions when you visit them"
-msgstr "Merci de commencer (marquer) quelques questions quand vous les visitez"
-
-#: skins/default/templates/questions.html:162
-#: skins/default/templates/unused/questions_ajax.html:88
-msgid "You can expand your search by "
-msgstr "Vous pouvez élargir votre recherche en"
-
-#: skins/default/templates/questions.html:165
-#: skins/default/templates/unused/questions_ajax.html:92
-msgid "resetting author"
-msgstr "réinitialisant l'auteur"
-
-#: skins/default/templates/questions.html:168
-#: skins/default/templates/unused/questions_ajax.html:96
-msgid "resetting tags"
-msgstr "réinitialisant les mots-clés (\"tags\")"
-
-#: skins/default/templates/questions.html:171
-#: skins/default/templates/questions.html:174
-#: skins/default/templates/unused/questions_ajax.html:100
-#: skins/default/templates/unused/questions_ajax.html:104
-msgid "starting over"
-msgstr "repartant de zéro"
-
-#: skins/default/templates/questions.html:179
-#: skins/default/templates/unused/questions_ajax.html:109
-msgid "Please always feel free to ask your question!"
-msgstr "N'hésitez pas à poser des questions !"
-
-#: skins/default/templates/questions.html:183
-#: skins/default/templates/unused/questions_ajax.html:113
-msgid "Did not find what you were looking for?"
-msgstr "Vous n'avez pas trouvé ce que vous cherchiez ?"
-
-#: skins/default/templates/questions.html:184
-#: skins/default/templates/unused/questions_ajax.html:114
-msgid "Please, post your question!"
-msgstr "Veuillez saisir votre question !"
-
-#: skins/default/templates/questions.html:199
-msgid "Contributors"
-msgstr "Contributeurs"
-
-#: skins/default/templates/questions.html:216
-msgid "Related tags"
-msgstr "Tags associés"
-
-#: skins/default/templates/reopen.html:3 skins/default/templates/reopen.html:6
+#: skins/default/templates/reopen.html:3 skins/default/templates/reopen.html:5
msgid "Reopen question"
msgstr "Réouvrir cette question"
-#: skins/default/templates/reopen.html:9
+#: skins/default/templates/reopen.html:6
msgid "Title"
msgstr "Titre"
-#: skins/default/templates/reopen.html:14
+#: skins/default/templates/reopen.html:11
#, python-format
msgid ""
"This question has been closed by \n"
-" <a href=\"%(closed_by_profile_url)s\">%(closed_by_username)s</a>\n"
-" "
+" <a href=\"%(closed_by_profile_url)s\">%(closed_by_username)s</a>\n"
msgstr ""
"Cette question a été cloturée par \n"
-" <a href=\"%(closed_by_profile_url)s\">%(closed_by_username)s</a>"
+" <a href=\"%(closed_by_profile_url)s\">%(closed_by_username)s</a>\n"
-#: skins/default/templates/reopen.html:19
+#: skins/default/templates/reopen.html:16
msgid "Close reason:"
msgstr "Motif de cloture :"
-#: skins/default/templates/reopen.html:22
+#: skins/default/templates/reopen.html:19
msgid "When:"
msgstr "Quand :"
-#: skins/default/templates/reopen.html:25
+#: skins/default/templates/reopen.html:22
msgid "Reopen this question?"
msgstr "Réouvrir cette question ?"
-#: skins/default/templates/reopen.html:29
+#: skins/default/templates/reopen.html:26
msgid "Reopen this question"
msgstr "Réouvrir cette question"
@@ -4374,37 +4294,24 @@ msgid "click to hide/show revision"
msgstr "cliquez pour afficher/masquer la révision"
#: skins/default/templates/revisions.html:29
-#, fuzzy, python-format
-msgid "revision %(number)s"
-msgstr "Numéro de révision du thème"
-
-#: skins/default/templates/tag_selector.html:3
-msgid "Interesting tags"
-msgstr "Tags intéressants"
-
-#: skins/default/templates/tag_selector.html:13
#, python-format
-msgid "remove '%(tag_name)s' from the list of interesting tags"
-msgstr "Retirer '%(tag_name)s' de la liste des tags intéressants"
-
-#: skins/default/templates/tag_selector.html:19
-#: skins/default/templates/tag_selector.html:36
-#: skins/default/templates/user_moderate.html:35
-msgid "Add"
-msgstr "Ajouter"
+msgid "revision %(number)s"
+msgstr "révision %(number)s"
-#: skins/default/templates/tag_selector.html:20
-msgid "Ignored tags"
-msgstr "Tags ignorés"
+#: skins/default/templates/subscribe_for_tags.html:3
+#: skins/default/templates/subscribe_for_tags.html:5
+#, fuzzy
+msgid "Subscribe for tags"
+msgstr "utiliser les mots-clés (tags)"
-#: skins/default/templates/tag_selector.html:30
-#, python-format
-msgid "remove '%(tag_name)s' from the list of ignored tags"
-msgstr "Retirer '%(tag_name)s' de la liste des tags ignorés"
+#: skins/default/templates/subscribe_for_tags.html:6
+#, fuzzy
+msgid "Please, subscribe for the following tags:"
+msgstr "Cette question a été close pour la raison suivante "
-#: skins/default/templates/tag_selector.html:39
-msgid "keep ignored questions hidden"
-msgstr "Continuer de masquer les questions ignorées"
+#: skins/default/templates/subscribe_for_tags.html:15
+msgid "Subscribe"
+msgstr ""
#: skins/default/templates/tags.html:4 skins/default/templates/tags.html:8
msgid "Tag list"
@@ -4426,7 +4333,7 @@ msgstr "triée par fréquence d'utilisation des tags"
msgid "by popularity"
msgstr "par popularité"
-#: skins/default/templates/tags.html:27
+#: skins/default/templates/tags.html:26
#, python-format
msgid ""
"All tags matching '<span class=\"darkred\"><strong>%(stag)s</strong></span>'"
@@ -4434,363 +4341,19 @@ msgstr ""
"Tous les tags vérifiant '<span class=\"darkred\"><strong>%(stag)s</strong></"
"span>' "
-#: skins/default/templates/tags.html:30
+#: skins/default/templates/tags.html:29
msgid "Nothing found"
msgstr "Aucun résultat"
-# FIXME ou bien "Annulation des emails de notification de mises à jour" ???
-#: skins/default/templates/user.html:14
-#, python-format
-msgid "%(username)s's profile"
-msgstr "Profil de l'utilisateur %(username)s"
-
-#: skins/default/templates/user_edit.html:4
-msgid "Edit user profile"
-msgstr "Modifier le profil utilisateur"
-
-#: skins/default/templates/user_edit.html:7
-msgid "edit profile"
-msgstr "Modifier le profil"
-
-#: skins/default/templates/user_edit.html:17
-#: skins/default/templates/user_info.html:11
-msgid "change picture"
-msgstr "changer d'image"
-
-#: skins/default/templates/user_edit.html:20
-msgid "Registered user"
-msgstr "Utilisateur enregistré"
-
-#: skins/default/templates/user_edit.html:27
-msgid "Screen Name"
-msgstr "Pseudo"
-
-#: skins/default/templates/user_edit.html:75
-#: skins/default/templates/user_email_subscriptions.html:18
-msgid "Update"
-msgstr "Mettre à jour"
-
-#: skins/default/templates/user_email_subscriptions.html:4
-msgid "Email subscription settings"
-msgstr "Paramètres d'abonnement aux emails"
-
-#: skins/default/templates/user_email_subscriptions.html:5
-msgid "email subscription settings info"
-msgstr ""
-"<span class='big strong'>Infos concernant les paramètres d'abonnement aux "
-"emails </span> Ceci vous permet de vous abonner aux questions que vous "
-"trouvez intéressantes. Vous recevrez les réponses par email. "
-
-#: skins/default/templates/user_email_subscriptions.html:19
-msgid "Stop sending email"
-msgstr "Arrêter d'envoyer des emails"
-
-#: skins/default/templates/user_inbox.html:31
-#, fuzzy
-msgid "Sections:"
-msgstr "questions"
-
-#: skins/default/templates/user_inbox.html:35
-#, python-format
-msgid "forum responses (%(re_count)s)"
-msgstr ""
-
-#: skins/default/templates/user_inbox.html:40
-#, python-format
-msgid "flagged items (%(flag_count)s)"
-msgstr ""
-
-#: skins/default/templates/user_inbox.html:46
-#, fuzzy
-msgid "select:"
-msgstr "Supprimer"
-
-#: skins/default/templates/user_inbox.html:48
-#, fuzzy
-msgid "seen"
-msgstr "dernière connexion"
-
-#: skins/default/templates/user_inbox.html:49
-#, fuzzy
-msgid "new"
-msgstr "date (↓)"
-
-#: skins/default/templates/user_inbox.html:50
-#, fuzzy
-msgid "none"
-msgstr "bronze"
-
-#: skins/default/templates/user_inbox.html:51
-#, fuzzy
-msgid "mark as seen"
-msgstr "dernière connexion"
-
-# FIXME ou "ayant reçu une récompense"
-#: skins/default/templates/user_inbox.html:52
-#, fuzzy
-msgid "mark as new"
-msgstr "marquée comme meilleure réponse"
-
-#: skins/default/templates/user_inbox.html:53
-msgid "dismiss"
-msgstr ""
+#: skins/default/templates/users.html:4 skins/default/templates/users.html:7
+msgid "Users"
+msgstr "Utilisateurs"
-#: skins/default/templates/user_info.html:18
#: skins/default/templates/users.html:13 skins/default/templates/users.html:14
+#: skins/default/templates/user_profile/user_info.html:25
msgid "reputation"
msgstr "réputation"
-#: skins/default/templates/user_info.html:30
-msgid "manage login methods"
-msgstr ""
-
-#: skins/default/templates/user_info.html:34
-msgid "update profile"
-msgstr "Mettre à jour le profil"
-
-#: skins/default/templates/user_info.html:46
-msgid "real name"
-msgstr "nom réél"
-
-#: skins/default/templates/user_info.html:51
-msgid "member for"
-msgstr "membre depuis"
-
-#: skins/default/templates/user_info.html:56
-msgid "last seen"
-msgstr "dernière connexion"
-
-#: skins/default/templates/user_info.html:62
-msgid "user website"
-msgstr "Site internet"
-
-#: skins/default/templates/user_info.html:68
-msgid "location"
-msgstr "Lieu"
-
-#: skins/default/templates/user_info.html:75
-msgid "age"
-msgstr "Age"
-
-#: skins/default/templates/user_info.html:76
-msgid "age unit"
-msgstr "ans "
-
-#: skins/default/templates/user_info.html:83
-msgid "todays unused votes"
-msgstr "Votes non utilisés aujourd'hui"
-
-#: skins/default/templates/user_info.html:84
-msgid "votes left"
-msgstr "votes restants"
-
-#: skins/default/templates/user_moderate.html:5
-#, python-format
-msgid "%(username)s's current status is \"%(status)s\""
-msgstr "Le statut actuel de %(username)s est \"%(status)s\""
-
-#: skins/default/templates/user_moderate.html:8
-msgid "User status changed"
-msgstr "Statut de l'utilisateur modifié"
-
-#: skins/default/templates/user_moderate.html:15
-msgid "Save"
-msgstr "Enregistrer"
-
-#: skins/default/templates/user_moderate.html:21
-#, python-format
-msgid "Your current reputation is %(reputation)s points"
-msgstr "Vous avez actuellement %(reputation)s points de réputation"
-
-#: skins/default/templates/user_moderate.html:23
-#, python-format
-msgid "User's current reputation is %(reputation)s points"
-msgstr "Cet utilisateur a actuellement %(reputation)s points de réputation"
-
-#: skins/default/templates/user_moderate.html:27
-msgid "User reputation changed"
-msgstr "Réputation de l'utilisateur modifiée"
-
-#: skins/default/templates/user_moderate.html:34
-msgid "Subtract"
-msgstr "Soustraire"
-
-#: skins/default/templates/user_moderate.html:39
-#, python-format
-msgid "Send message to %(username)s"
-msgstr "Envoyer un message à %(username)s"
-
-#: skins/default/templates/user_moderate.html:40
-msgid ""
-"An email will be sent to the user with 'reply-to' field set to your email "
-"address. Please make sure that your address is entered correctly."
-msgstr ""
-"Un email sera envoyé à cet utilisateur avec le champ 'reply-to' pré-"
-"renseigné avec votre adresse email, afin qu'il puisse vous répondre "
-"directement. Merci de vérifier que votre adresse email est correcte."
-
-#: skins/default/templates/user_moderate.html:42
-msgid "Message sent"
-msgstr "Message envoyé"
-
-#: skins/default/templates/user_moderate.html:60
-msgid "Send message"
-msgstr "Envoyer le message"
-
-#: skins/default/templates/user_reputation.html:7
-msgid "Your karma change log."
-msgstr "L'évolution de votre Karma."
-
-#: skins/default/templates/user_reputation.html:9
-#, python-format
-msgid "%(user_name)s's karma change log"
-msgstr "Evolution du karma de %(user_name)s"
-
-#: skins/default/templates/user_stats.html:7
-#, python-format
-msgid "<span class=\"count\">%(counter)s</span> Question"
-msgid_plural "<span class=\"count\">%(counter)s</span> Questions"
-msgstr[0] "<span class=\"count\">%(counter)s</span> Question"
-msgstr[1] "<span class=\"count\">%(counter)s</span> Questions"
-
-#: skins/default/templates/user_stats.html:12
-#, python-format
-msgid "<span class=\"count\">%(counter)s</span> Answer"
-msgid_plural "<span class=\"count\">%(counter)s</span> Answers"
-msgstr[0] "<span class=\"count\">%(counter)s</span> Réponse"
-msgstr[1] "<span class=\"count\">%(counter)s</span> Réponses"
-
-#: skins/default/templates/user_stats.html:20
-#, python-format
-msgid "the answer has been voted for %(answer_score)s times"
-msgstr "Cette réponse a obtenu %(answer_score)s votes positifs"
-
-#: skins/default/templates/user_stats.html:20
-msgid "this answer has been selected as correct"
-msgstr "Cette réponse a été sélectionnée comme correct"
-
-#: skins/default/templates/user_stats.html:30
-#, python-format
-msgid "(%(comment_count)s comment)"
-msgid_plural "the answer has been commented %(comment_count)s times"
-msgstr[0] "(%(comment_count)s commentaire)"
-msgstr[1] "cette réponse a été commentée %(comment_count)s fois"
-
-#: skins/default/templates/user_stats.html:40
-#, python-format
-msgid "<span class=\"count\">%(cnt)s</span> Vote"
-msgid_plural "<span class=\"count\">%(cnt)s</span> Votes "
-msgstr[0] "<span class=\"count\">%(cnt)s</span> Vote"
-msgstr[1] "<span class=\"count\">%(cnt)s</span> Votes "
-
-#: skins/default/templates/user_stats.html:46
-msgid "thumb up"
-msgstr "J'aime (+1)"
-
-#: skins/default/templates/user_stats.html:47
-msgid "user has voted up this many times"
-msgstr "L'utilisateur a voté positivement pour cela de nombreuses fois"
-
-#: skins/default/templates/user_stats.html:50
-msgid "thumb down"
-msgstr "J'aime pas (-1)"
-
-#: skins/default/templates/user_stats.html:51
-msgid "user voted down this many times"
-msgstr "L'utilisateur a voté négativement pour cela de nombreuses fois"
-
-#: skins/default/templates/user_stats.html:59
-#, python-format
-msgid "<span class=\"count\">%(counter)s</span> Tag"
-msgid_plural "<span class=\"count\">%(counter)s</span> Tags"
-msgstr[0] "<span class=\"count\">%(counter)s</span> Mot-clé"
-msgstr[1] "<span class=\"count\">%(counter)s</span> Mots-clés"
-
-#: skins/default/templates/user_stats.html:67
-#, python-format
-msgid ""
-"see other questions with %(view_user)s's contributions tagged '%(tag_name)s' "
-msgstr ""
-"voir d'autres questions de %(view_user)s marquées avec les mots-clés "
-"'%(tag_name)s'"
-
-#: skins/default/templates/user_stats.html:81
-#, python-format
-msgid "<span class=\"count\">%(counter)s</span> Badge"
-msgid_plural "<span class=\"count\">%(counter)s</span> Badges"
-msgstr[0] "<span class=\"count\">%(counter)s</span> Badge"
-msgstr[1] "<span class=\"count\">%(counter)s</span> Badges"
-
-#: skins/default/templates/user_tabs.html:5
-msgid "User profile"
-msgstr "Profil utilisateur"
-
-#: skins/default/templates/user_tabs.html:6
-msgid "overview"
-msgstr "aperçu"
-
-#: skins/default/templates/user_tabs.html:9 views/users.py:729
-msgid "comments and answers to others questions"
-msgstr "Commentaires et réponses à d'autres questions"
-
-#: skins/default/templates/user_tabs.html:10
-msgid "inbox"
-msgstr ""
-
-#: skins/default/templates/user_tabs.html:13
-msgid "graph of user reputation"
-msgstr "Statistiques sur la réputation de cet utilisateur"
-
-#: skins/default/templates/user_tabs.html:14
-msgid "reputation history"
-msgstr "Historique de la réputation"
-
-#: skins/default/templates/user_tabs.html:16
-msgid "questions that user selected as his/her favorite"
-msgstr "questions favorites de cet utilisateur"
-
-#: skins/default/templates/user_tabs.html:17
-msgid "favorites"
-msgstr "favorites"
-
-#: skins/default/templates/user_tabs.html:19
-msgid "recent activity"
-msgstr "activité récente"
-
-# TODO demander au développeur de faire 2 entrées distinctes. Une contiendra "date (↑)" et l'autre "date"
-#: skins/default/templates/user_tabs.html:20
-msgid "activity"
-msgstr "actualité (↓)"
-
-#: skins/default/templates/user_tabs.html:23 views/users.py:794
-msgid "user vote record"
-msgstr "Trace des votes de cet utilisateur"
-
-# FIXME
-#: skins/default/templates/user_tabs.html:24
-msgid "casted votes"
-msgstr "abgegebene Stimmen"
-
-#: skins/default/templates/user_tabs.html:28 views/users.py:904
-msgid "email subscription settings"
-msgstr "Paramètres d'abonnement aux emails"
-
-#: skins/default/templates/user_tabs.html:29
-msgid "subscriptions"
-msgstr "Abonnements aux emails"
-
-#: skins/default/templates/user_tabs.html:33 views/users.py:216
-msgid "moderate this user"
-msgstr "Modérer cet utilisateur"
-
-#: skins/default/templates/user_tabs.html:34
-msgid "moderation"
-msgstr "Modération"
-
-#: skins/default/templates/users.html:4 skins/default/templates/users.html:7
-msgid "Users"
-msgstr "Utilisateurs"
-
#: skins/default/templates/users.html:19 skins/default/templates/users.html:20
msgid "recent"
msgstr "récent"
@@ -4799,32 +4362,15 @@ msgstr "récent"
msgid "by username"
msgstr "par nom d'utilisateur"
-#: skins/default/templates/users.html:38
+#: skins/default/templates/users.html:37
#, python-format
msgid "users matching query %(suser)s:"
msgstr "utilisateurs vérifiant les critères %(suser)s"
-#: skins/default/templates/users.html:41
+#: skins/default/templates/users.html:40
msgid "Nothing found."
msgstr "Aucun résultat."
-# FIXME coquille dans phrase anglaise ???
-#: skins/default/templates/users_questions.html:9
-#: skins/default/templates/users_questions.html:17
-#, fuzzy, python-format
-msgid "this questions was selected as favorite %(cnt)s time"
-msgid_plural "this questions was selected as favorite %(cnt)s times"
-msgstr[0] "Cette question a été sélectionnée favorite"
-msgstr[1] "Cette question a été sélectionnée favorite"
-
-#: skins/default/templates/users_questions.html:10
-msgid "thumb-up on"
-msgstr "J'aime (+1) activé"
-
-#: skins/default/templates/users_questions.html:18
-msgid "thumb-up off"
-msgstr "J'aime (+1) désactivé"
-
#: skins/default/templates/authopenid/changeemail.html:2
#: skins/default/templates/authopenid/changeemail.html:8
#: skins/default/templates/authopenid/changeemail.html:36
@@ -4925,19 +4471,19 @@ msgstr ""
"können Ihre E-Mail-Adresse bei Bedarf <a href='%(change_link)s'>ändern</a>."
#: skins/default/templates/authopenid/complete.html:21
-#: skins/default/templates/authopenid/complete.html:24
+#: skins/default/templates/authopenid/complete.html:23
#, fuzzy
msgid "Registration"
msgstr "S'inscrire"
-#: skins/default/templates/authopenid/complete.html:29
+#: skins/default/templates/authopenid/complete.html:27
#, python-format
msgid "register new %(provider)s account info, see %(gravatar_faq_url)s"
msgstr ""
"Créez vous un compte chez %(provider)s; pour plus d'infos, <a "
"href='%(gravatar_faq_url)s'>cliquez ici</a>"
-#: skins/default/templates/authopenid/complete.html:32
+#: skins/default/templates/authopenid/complete.html:30
#, python-format
msgid ""
"%(username)s already exists, choose another name for \n"
@@ -4949,7 +4495,7 @@ msgstr ""
" %(provider)s. Un email est aussi obligatoire, "
"cf. %(gravatar_faq_url)s"
-#: skins/default/templates/authopenid/complete.html:36
+#: skins/default/templates/authopenid/complete.html:34
#, python-format
msgid ""
"register new external %(provider)s account info, see %(gravatar_faq_url)s"
@@ -4958,53 +4504,68 @@ msgstr ""
"d'identité externe %(provider)s; pour plus d'infos <a "
"href='%(gravatar_faq_url)s'>cliquez ici</a>"
-#: skins/default/templates/authopenid/complete.html:39
+#: skins/default/templates/authopenid/complete.html:37
#, python-format
msgid "register new Facebook connect account info, see %(gravatar_faq_url)s"
msgstr ""
"Informations concernant la création d'un nouveau compte Facebook pour se "
"connecter; pour plus d'infos visitez la page %(gravatar_faq_url)s"
-#: skins/default/templates/authopenid/complete.html:42
+#: skins/default/templates/authopenid/complete.html:40
msgid "This account already exists, please use another."
msgstr "Ce compte existe déjà; merci d'en utiliser un autre."
# FIXME
-#: skins/default/templates/authopenid/complete.html:61
+#: skins/default/templates/authopenid/complete.html:59
msgid "Screen name label"
msgstr "Pseudo"
# FIXME
-#: skins/default/templates/authopenid/complete.html:68
+#: skins/default/templates/authopenid/complete.html:66
msgid "Email address label"
msgstr "Adresse email"
# FIXME
-#: skins/default/templates/authopenid/complete.html:74
-#: skins/default/templates/authopenid/signup_with_password.html:17
+#: skins/default/templates/authopenid/complete.html:72
+#: skins/default/templates/authopenid/signup_with_password.html:36
msgid "receive updates motivational blurb"
msgstr ""
-#: skins/default/templates/authopenid/complete.html:78
-#: skins/default/templates/authopenid/signup_with_password.html:21
+#: skins/default/templates/authopenid/complete.html:76
+#: skins/default/templates/authopenid/signup_with_password.html:40
msgid "please select one of the options above"
msgstr "Merci de sélectionner une des options ci-dessus"
-#: skins/default/templates/authopenid/complete.html:81
+#: skins/default/templates/authopenid/complete.html:79
msgid "Tag filter tool will be your right panel, once you log in."
msgstr ""
"L'outil de filtrage des mots-clés sera affiché à droite de l'écran, une fos "
"que vous serez authentifié"
-#: skins/default/templates/authopenid/complete.html:82
+#: skins/default/templates/authopenid/complete.html:80
msgid "create account"
msgstr "Créer un compte"
-#: skins/default/templates/authopenid/signin.html:3
+#: skins/default/templates/authopenid/macros.html:50
+msgid "Please enter your <span>user name</span>, then sign in"
+msgstr ""
+
+#: skins/default/templates/authopenid/macros.html:51
+#: skins/default/templates/authopenid/signin.html:84
+#, fuzzy
+msgid "(or select another login method above)"
+msgstr "Merci de sélectionner une des options ci-dessus"
+
+#: skins/default/templates/authopenid/macros.html:53
+#, fuzzy
+msgid "Sign in"
+msgstr "connexion/"
+
+#: skins/default/templates/authopenid/signin.html:4
msgid "User login"
msgstr "Veuillez vous authentifier avec votre \"OpenID\""
-#: skins/default/templates/authopenid/signin.html:11
+#: skins/default/templates/authopenid/signin.html:12
#, fuzzy, python-format
msgid ""
"\n"
@@ -5016,7 +4577,7 @@ msgstr ""
"%(title)s</strong> %(summary)s...\"</i> <span class=\"strong big\">sera "
"publiée dès que vous vous serez authentifié.</span>"
-#: skins/default/templates/authopenid/signin.html:18
+#: skins/default/templates/authopenid/signin.html:19
#, fuzzy, python-format
msgid ""
"Your question \n"
@@ -5028,148 +4589,133 @@ msgstr ""
"authentifié\n"
" "
-#: skins/default/templates/authopenid/signin.html:25
+#: skins/default/templates/authopenid/signin.html:26
msgid ""
"Take a pick of your favorite service below to sign in using secure OpenID or "
"similar technology. Your external service password always stays confidential "
"and you don't have to rememeber or create another one."
msgstr ""
-#: skins/default/templates/authopenid/signin.html:28
+#: skins/default/templates/authopenid/signin.html:29
msgid ""
"It's a good idea to make sure that your existing login methods still work, "
"or add a new one. Please click any of the icons below to check/change or add "
"new login methods."
msgstr ""
-#: skins/default/templates/authopenid/signin.html:30
+#: skins/default/templates/authopenid/signin.html:31
msgid ""
"Please add a more permanent login method by clicking one of the icons below, "
"to avoid logging in via email each time."
msgstr ""
-#: skins/default/templates/authopenid/signin.html:34
+#: skins/default/templates/authopenid/signin.html:35
msgid ""
"Click on one of the icons below to add a new login method or re-validate an "
"existing one."
msgstr ""
-#: skins/default/templates/authopenid/signin.html:36
+#: skins/default/templates/authopenid/signin.html:37
msgid ""
"You don't have a method to log in right now, please add one or more by "
"clicking any of the icons below."
msgstr ""
-#: skins/default/templates/authopenid/signin.html:39
+#: skins/default/templates/authopenid/signin.html:40
msgid ""
"Please check your email and visit the enclosed link to re-connect to your "
"account"
msgstr ""
-#: skins/default/templates/authopenid/signin.html:86
-msgid "Please enter your <span>user name</span>, then sign in"
-msgstr ""
-
-#: skins/default/templates/authopenid/signin.html:87
-#: skins/default/templates/authopenid/signin.html:109
-#, fuzzy
-msgid "(or select another login method above)"
-msgstr "Merci de sélectionner une des options ci-dessus"
-
-#: skins/default/templates/authopenid/signin.html:89
-#, fuzzy
-msgid "Sign in"
-msgstr "connexion/"
-
-#: skins/default/templates/authopenid/signin.html:107
+#: skins/default/templates/authopenid/signin.html:82
#, fuzzy
msgid "Please enter your <span>user name and password</span>, then sign in"
msgstr "Veuillez saisir votre nom d'utilisateur et un mot de passe"
-#: skins/default/templates/authopenid/signin.html:111
+#: skins/default/templates/authopenid/signin.html:86
msgid "Login failed, please try again"
msgstr ""
-#: skins/default/templates/authopenid/signin.html:114
+#: skins/default/templates/authopenid/signin.html:89
msgid "Login name"
msgstr "Nom d'utilisateur"
-#: skins/default/templates/authopenid/signin.html:118
+#: skins/default/templates/authopenid/signin.html:93
msgid "Password"
msgstr "Mot de passe"
-#: skins/default/templates/authopenid/signin.html:122
+#: skins/default/templates/authopenid/signin.html:97
msgid "Login"
msgstr "Connexion"
-#: skins/default/templates/authopenid/signin.html:129
+#: skins/default/templates/authopenid/signin.html:104
msgid "To change your password - please enter the new one twice, then submit"
msgstr ""
-#: skins/default/templates/authopenid/signin.html:132
+#: skins/default/templates/authopenid/signin.html:107
#, fuzzy
msgid "New password"
msgstr "Nouveau mot de passe pris en compte."
-#: skins/default/templates/authopenid/signin.html:137
+#: skins/default/templates/authopenid/signin.html:112
#, fuzzy
msgid "Please, retype"
msgstr "Merci de resaisir votre mot de passe"
-#: skins/default/templates/authopenid/signin.html:156
+#: skins/default/templates/authopenid/signin.html:130
msgid "Here are your current login methods"
msgstr ""
-#: skins/default/templates/authopenid/signin.html:160
+#: skins/default/templates/authopenid/signin.html:134
#, fuzzy
msgid "provider"
msgstr "Utilisateur certifié"
-#: skins/default/templates/authopenid/signin.html:161
+#: skins/default/templates/authopenid/signin.html:135
#, fuzzy
msgid "last used"
msgstr "dernière connexion"
-#: skins/default/templates/authopenid/signin.html:162
+#: skins/default/templates/authopenid/signin.html:136
msgid "delete, if you like"
msgstr ""
-#: skins/default/templates/authopenid/signin.html:187
+#: skins/default/templates/authopenid/signin.html:162
#, fuzzy
msgid "Still have trouble signing in?"
msgstr "D'autres questions ?"
-#: skins/default/templates/authopenid/signin.html:192
+#: skins/default/templates/authopenid/signin.html:167
msgid "Please, enter your email address below and obtain a new key"
msgstr ""
-#: skins/default/templates/authopenid/signin.html:194
+#: skins/default/templates/authopenid/signin.html:169
msgid "Please, enter your email address below to recover your account"
msgstr ""
-#: skins/default/templates/authopenid/signin.html:197
+#: skins/default/templates/authopenid/signin.html:172
#, fuzzy
msgid "recover your account via email"
msgstr "Changer le mot de passe de votre compte"
-#: skins/default/templates/authopenid/signin.html:208
+#: skins/default/templates/authopenid/signin.html:183
msgid "Send a new recovery key"
msgstr ""
-#: skins/default/templates/authopenid/signin.html:210
+#: skins/default/templates/authopenid/signin.html:185
#, fuzzy
msgid "Recover your account via email"
msgstr "Changer le mot de passe de votre compte"
-#: skins/default/templates/authopenid/signin.html:221
+#: skins/default/templates/authopenid/signin.html:196
msgid "Why use OpenID?"
msgstr "Pourquoi utiliser OpenID ?"
-#: skins/default/templates/authopenid/signin.html:224
+#: skins/default/templates/authopenid/signin.html:199
msgid "with openid it is easier"
msgstr "OpenID est le nouveau standard d’identification sur Internet."
-#: skins/default/templates/authopenid/signin.html:227
+#: skins/default/templates/authopenid/signin.html:202
msgid "reuse openid"
msgstr ""
"Le principe d'OpenID est simple : au lieu de créer un nouveau compte sur "
@@ -5179,38 +4725,48 @@ msgstr ""
"d'autres sites \"compatibles OpenID\", sans avoir besoin de remplir le "
"formulaire d'inscription de ces sites..."
-#: skins/default/templates/authopenid/signin.html:230
+#: skins/default/templates/authopenid/signin.html:205
msgid "openid is widely adopted"
msgstr ""
"OpenID à été adopté par tous les grands portails (Google, Yahoo, Facebook, "
"Microsoft, Flicker, ...) ce qui porte le nombre de comptes OpenID à plus de "
"300 millions. Plus de 10000 sites sont compatibles OpenID. "
-#: skins/default/templates/authopenid/signin.html:233
+#: skins/default/templates/authopenid/signin.html:208
msgid "openid is supported open standard"
msgstr "OpenId est basé sur un standard international et libre."
-#: skins/default/templates/authopenid/signin.html:237
+#: skins/default/templates/authopenid/signin.html:212
msgid "Find out more"
msgstr "En savoir plus."
-#: skins/default/templates/authopenid/signin.html:238
+#: skins/default/templates/authopenid/signin.html:213
msgid "Get OpenID"
msgstr "Obtenir un compte OpenID"
-#: skins/default/templates/authopenid/signup_with_password.html:3
+#: skins/default/templates/authopenid/signup_with_password.html:4
msgid "Signup"
msgstr "S'enregistrer"
-#: skins/default/templates/authopenid/signup_with_password.html:6
+#: skins/default/templates/authopenid/signup_with_password.html:10
+#, fuzzy
+msgid "Please register by clicking on any of the icons below"
+msgstr "Merci de sélectionner une des options ci-dessus"
+
+#: skins/default/templates/authopenid/signup_with_password.html:23
+#, fuzzy
+msgid "or create a new user name and password here"
+msgstr "Créer un nom d'utilisateur et un mot de passe"
+
+#: skins/default/templates/authopenid/signup_with_password.html:25
msgid "Create login name and password"
msgstr "Créer un nom d'utilisateur et un mot de passe"
-#: skins/default/templates/authopenid/signup_with_password.html:8
+#: skins/default/templates/authopenid/signup_with_password.html:26
msgid "Traditional signup info"
msgstr "Informations sur la méthode classique de connexion"
-#: skins/default/templates/authopenid/signup_with_password.html:24
+#: skins/default/templates/authopenid/signup_with_password.html:44
msgid ""
"Please read and type in the two words below to help us prevent automated "
"account creation."
@@ -5218,204 +4774,830 @@ msgstr ""
"Merci de lire et saisir les deux mots ci-dessous pour nous aider à lutter "
"contre la création automatique de comptes (lutte contre le spam)."
-#: skins/default/templates/authopenid/signup_with_password.html:26
+#: skins/default/templates/authopenid/signup_with_password.html:47
msgid "Create Account"
msgstr "Créer un compte"
-#: skins/default/templates/authopenid/signup_with_password.html:27
+#: skins/default/templates/authopenid/signup_with_password.html:49
msgid "or"
msgstr "ou"
-#: skins/default/templates/authopenid/signup_with_password.html:28
+#: skins/default/templates/authopenid/signup_with_password.html:50
msgid "return to OpenID login"
msgstr "retourner à la page d'authentification OpenID"
-#: skins/default/templates/blocks/header_meta_links.html:7
-#, python-format
-msgid "responses for %(username)s"
-msgstr "réponses pour %(username)s"
+#: skins/default/templates/avatar/add.html:3
+#, fuzzy
+msgid "add avatar"
+msgstr "Qu'est ce que 'Gravatar' ?"
-#: skins/default/templates/blocks/header_meta_links.html:10
-#, python-format
-msgid "you have a new response"
-msgid_plural "you nave %(response_count)s new responses"
-msgstr[0] "vous avez une nouvelle réponse"
-msgstr[1] "vous avez %(response_count)s nouvelles réponses"
+#: skins/default/templates/avatar/add.html:5
+#, fuzzy
+msgid "Change avatar"
+msgstr "Modifier les tags"
-#: skins/default/templates/blocks/header_meta_links.html:13
-msgid "no new responses yet"
-msgstr "pas de nouvelles réponses pour l'instant"
+#: skins/default/templates/avatar/add.html:6
+#: skins/default/templates/avatar/change.html:7
+#, fuzzy
+msgid "Your current avatar: "
+msgstr "Informations détaillées sur votre compte:"
+
+#: skins/default/templates/avatar/add.html:9
+#: skins/default/templates/avatar/change.html:11
+msgid "You haven't uploaded an avatar yet. Please upload one now."
+msgstr ""
+
+#: skins/default/templates/avatar/add.html:13
+msgid "Upload New Image"
+msgstr ""
+
+#: skins/default/templates/avatar/change.html:4
+#, fuzzy
+msgid "change avatar"
+msgstr "Modifications enregistrées."
+
+#: skins/default/templates/avatar/change.html:17
+msgid "Choose new Default"
+msgstr ""
+
+#: skins/default/templates/avatar/change.html:22
+#, fuzzy
+msgid "Upload"
+msgstr "envoyer-sur-le-serveur/"
+
+#: skins/default/templates/avatar/confirm_delete.html:3
+#, fuzzy
+msgid "delete avatar"
+msgstr "réponse supprimée"
-#: skins/default/templates/blocks/header_meta_links.html:25
-#: skins/default/templates/blocks/header_meta_links.html:26
+#: skins/default/templates/avatar/confirm_delete.html:5
+msgid "Please select the avatars that you would like to delete."
+msgstr ""
+
+#: skins/default/templates/avatar/confirm_delete.html:7
#, python-format
-msgid "%(new)s new flagged posts and %(seen)s previous"
+msgid ""
+"You have no avatars to delete. Please <a href=\"%(avatar_change_url)s"
+"\">upload one</a> now."
msgstr ""
+#: skins/default/templates/avatar/confirm_delete.html:13
+#, fuzzy
+msgid "Delete These"
+msgstr "réponse supprimée"
+
# FIXME
-#: skins/default/templates/blocks/header_meta_links.html:28
-#: skins/default/templates/blocks/header_meta_links.html:29
+#: skins/default/templates/blocks/answer_edit_tips.html:3
+msgid "answer tips"
+msgstr "Conseils pour répondre"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:6
+msgid "please make your answer relevant to this community"
+msgstr ""
+"Rédiger vos réponses afin qu'elles soient pertinentes pour la communauté."
+
+#: skins/default/templates/blocks/answer_edit_tips.html:9
+msgid "try to give an answer, rather than engage into a discussion"
+msgstr ""
+"Contentez-vous de donner une réponse, plutôt que de vous engagez dans une "
+"discussion."
+
+#: skins/default/templates/blocks/answer_edit_tips.html:12
+msgid "please try to provide details"
+msgstr "Fournissez un maximum de détails."
+
+#: skins/default/templates/blocks/answer_edit_tips.html:15
+#: skins/default/templates/blocks/question_edit_tips.html:11
+msgid "be clear and concise"
+msgstr "Soyez clair et concis."
+
+#: skins/default/templates/blocks/answer_edit_tips.html:19
+#: skins/default/templates/blocks/question_edit_tips.html:15
+msgid "see frequently asked questions"
+msgstr "lisez notre FAQ (Foire aux questions)"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:25
+#: skins/default/templates/blocks/question_edit_tips.html:20
+msgid "Markdown tips"
+msgstr "Aide sur les balises \"Markdown\""
+
+#: skins/default/templates/blocks/answer_edit_tips.html:29
+#: skins/default/templates/blocks/question_edit_tips.html:24
+msgid "*italic*"
+msgstr "*italique*"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:32
+#: skins/default/templates/blocks/question_edit_tips.html:27
+msgid "**bold**"
+msgstr "**gras**"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:36
+#: skins/default/templates/blocks/question_edit_tips.html:31
+msgid "*italic* or _italic_"
+msgstr "*italique* ou __italique__"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:39
+#: skins/default/templates/blocks/question_edit_tips.html:34
+msgid "**bold** or __bold__"
+msgstr "**gras** ou __gras__"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:43
+#: skins/default/templates/blocks/question_edit_tips.html:38
+msgid "link"
+msgstr "lien"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:43
+#: skins/default/templates/blocks/answer_edit_tips.html:47
+#: skins/default/templates/blocks/question_edit_tips.html:38
+#: skins/default/templates/blocks/question_edit_tips.html:43
+msgid "text"
+msgstr "texte"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:47
+#: skins/default/templates/blocks/question_edit_tips.html:43
+msgid "image"
+msgstr "image"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:51
+#: skins/default/templates/blocks/question_edit_tips.html:47
+msgid "numbered list:"
+msgstr "liste numérotée:"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:56
+#: skins/default/templates/blocks/question_edit_tips.html:52
+msgid "basic HTML tags are also supported"
+msgstr "les balises HTML élémentaires sont aussi supportées."
+
+#: skins/default/templates/blocks/answer_edit_tips.html:60
+#: skins/default/templates/blocks/question_edit_tips.html:56
+msgid "learn more about Markdown"
+msgstr "en savoir plus sur les balises \"Markdown\""
+
+#: skins/default/templates/blocks/ask_form.html:7
+msgid "login to post question info"
+msgstr ""
+"<span class=\"strong big\">Formulez votre question à l'aide du formulaire ci-"
+"dessous (un court titre résumant la question, puis la question à proprement "
+"parler, aussi détaillée que vous le souhaitez...)</span>. A l'étape "
+"suivante, vous devrez saisir votre email et votre nom (ou un pseudo si vous "
+"souhaitez rester anonyme...). Ces éléments sont nécessaires pour bénéficier "
+"des fonctionnalités de notre module de questions/réponses, qui repose sur un "
+"principe communautaire."
+
+#: skins/default/templates/blocks/ask_form.html:11
+#, python-format
+msgid ""
+"must have valid %(email)s to post, \n"
+" see %(email_validation_faq_url)s\n"
+" "
+msgstr ""
+"<span class='strong big'>Ihre E-Mail-Adresse %(email)s wurde noch nicht "
+"bestätigt.</span> Um Beiträge veröffentlichen zu können, müssen Sie Ihre E-"
+"Mail-Adresse bestätigen. <a href='%(email_validation_faq_url)s'>Mehr infos "
+"hier</a>.<br>Sie können Ihren Beitrag speichern und die Bestätigung danach "
+"durchführen - Ihr Beitrag wird bis dahin gespeichert."
+
+#: skins/default/templates/blocks/ask_form.html:28
+msgid "Login/signup to post your question"
+msgstr "Vous devez vous authentifier pour publier votre question "
+
+#: skins/default/templates/blocks/ask_form.html:30
+msgid "Ask your question"
+msgstr "Poser votre question"
+
+#: skins/default/templates/blocks/editor_data.html:5
#, fuzzy, python-format
-msgid "%(new)s new flagged posts"
-msgstr "Premier message étiqueté"
+msgid "each tag must be shorter that %(max_chars)s character"
+msgid_plural "each tag must be shorter than %(max_chars)s characters"
+msgstr[0] "Chaque mot-clé doit comporter moins de %(max_chars)d caractère"
+msgstr[1] "Chaque mot-clé doit comporter moins de %(max_chars)d caractères"
-# FIXME
-#: skins/default/templates/blocks/header_meta_links.html:34
-#: skins/default/templates/blocks/header_meta_links.html:35
+#: skins/default/templates/blocks/editor_data.html:7
#, fuzzy, python-format
-msgid "%(seen)s flagged posts"
-msgstr "Premier message étiqueté"
+msgid "please use %(tag_count)s tag"
+msgid_plural "please use %(tag_count)s tags or less"
+msgstr[0] "Veuillez utiliser %(tag_count)d mot-clé, ou moins"
+msgstr[1] "Veuillez utiliser %(tag_count)d mots-clés, ou moins"
+
+#: skins/default/templates/blocks/editor_data.html:8
+#, fuzzy, python-format
+msgid ""
+"please use up to %(tag_count)s tags, less than %(max_chars)s characters each"
+msgstr "jusqu'à 5 tags, faisant chacun moins de 20 caractères"
+
+#: skins/default/templates/blocks/footer.html:5
+#: skins/default/templates/blocks/header_meta_links.html:12
+msgid "about"
+msgstr "Qui sommes nous ?"
+
+#: skins/default/templates/blocks/footer.html:7
+msgid "privacy policy"
+msgstr "Respect de la vie privée"
+
+#: skins/default/templates/blocks/footer.html:16
+msgid "give feedback"
+msgstr "Faire une remarque"
+
+#: skins/default/templates/blocks/header.html:8
+msgid "back to home page"
+msgstr "Retour à l'accueil"
+
+#: skins/default/templates/blocks/header.html:9
+#, fuzzy, python-format
+msgid "%(site)s logo"
+msgstr "Logo du site de Questions/Réponses"
+
+#: skins/default/templates/blocks/header.html:17
+msgid "questions"
+msgstr "questions"
+
+#: skins/default/templates/blocks/header.html:27
+msgid "users"
+msgstr "Communauté"
+
+#: skins/default/templates/blocks/header.html:32
+msgid "badges"
+msgstr "Réputation"
+
+#: skins/default/templates/blocks/header.html:37
+msgid "ask a question"
+msgstr "Poser une question"
-#: skins/default/templates/blocks/header_meta_links.html:47
+#: skins/default/templates/blocks/header_meta_links.html:8
msgid "logout"
msgstr "Déconnexion"
-#: skins/default/templates/blocks/header_meta_links.html:49
+#: skins/default/templates/blocks/header_meta_links.html:10
msgid "login"
msgstr "Connexion"
-#: skins/default/templates/blocks/header_meta_links.html:54
+#: skins/default/templates/blocks/header_meta_links.html:15
msgid "settings"
msgstr "paramètres"
-#: skins/default/templates/unused/email_base.html:8
-msgid "home"
-msgstr "accueil"
+#: skins/default/templates/blocks/input_bar.html:34
+msgid "search"
+msgstr "Chercher"
+
+#: skins/default/templates/blocks/question_edit_tips.html:3
+msgid "question tips"
+msgstr "conseils pour poser une question"
+
+#: skins/default/templates/blocks/question_edit_tips.html:5
+msgid "please ask a relevant question"
+msgstr "Merci de poser une question pertinente."
+
+#: skins/default/templates/blocks/question_edit_tips.html:8
+msgid "please try provide enough details"
+msgstr "Merci de fournir suffisamment de détails."
+
+#: skins/default/templates/blocks/tag_selector.html:4
+msgid "Interesting tags"
+msgstr "Tags intéressants"
+
+#: skins/default/templates/blocks/tag_selector.html:18
+#: skins/default/templates/blocks/tag_selector.html:34
+#: skins/default/templates/user_profile/user_moderate.html:38
+msgid "Add"
+msgstr "Ajouter"
+
+#: skins/default/templates/blocks/tag_selector.html:20
+msgid "Ignored tags"
+msgstr "Tags ignorés"
+
+#: skins/default/templates/blocks/tag_selector.html:36
+msgid "Display tag filter"
+msgstr "Filtre des tags"
+
+#: skins/default/templates/main_page/content.html:13
+msgid "Did not find what you were looking for?"
+msgstr "Vous n'avez pas trouvé ce que vous cherchiez ?"
+
+#: skins/default/templates/main_page/content.html:14
+msgid "Please, post your question!"
+msgstr "Veuillez saisir votre question !"
+
+#: skins/default/templates/main_page/headline.html:7
+msgid "subscribe to the questions feed"
+msgstr "S'abonner au flux RSS des questions"
+
+#: skins/default/templates/main_page/headline.html:8
+msgid "rss feed"
+msgstr "flux RSS"
+
+#: skins/default/templates/main_page/headline.html:12 views/readers.py:119
+#, fuzzy, python-format
+msgid "%(q_num)s question, tagged"
+msgid_plural "%(q_num)s questions, tagged"
+msgstr[0] "%(q_num)s question"
+msgstr[1] "%(q_num)s questions"
+
+#: skins/default/templates/main_page/headline.html:14 views/readers.py:127
+#, python-format
+msgid "%(q_num)s question"
+msgid_plural "%(q_num)s questions"
+msgstr[0] "%(q_num)s question"
+msgstr[1] "%(q_num)s questions"
+
+#: skins/default/templates/main_page/headline.html:17
+#, python-format
+msgid "with %(author_name)s's contributions"
+msgstr "avec la contribution de %(author_name)s"
+
+#: skins/default/templates/main_page/headline.html:28
+msgid "Search tips:"
+msgstr "Conseils pour la recherche:"
+
+#: skins/default/templates/main_page/headline.html:31
+msgid "reset author"
+msgstr "Réinitialiser l'auteur"
-#: skins/default/templates/unused/notarobot.html:3
-msgid "Please prove that you are a Human Being"
+#: skins/default/templates/main_page/headline.html:33
+#: skins/default/templates/main_page/headline.html:36
+#: skins/default/templates/main_page/nothing_found.html:18
+#: skins/default/templates/main_page/nothing_found.html:21
+#, fuzzy
+msgid " or "
+msgstr "ou"
+
+#: skins/default/templates/main_page/headline.html:34
+msgid "reset tags"
+msgstr "Réinitialiser les tags"
+
+#: skins/default/templates/main_page/headline.html:37
+#: skins/default/templates/main_page/headline.html:40
+msgid "start over"
+msgstr "Recommencer"
+
+# FIXME
+#: skins/default/templates/main_page/headline.html:42
+msgid " - to expand, or dig in by adding more tags and revising the query."
msgstr ""
-"Le captcha ci-dessous nous permet de vous assurer que vous êtes un humain. "
-"Ceci permet de lutter contre les spammeurs, qui utilisent des robots pour "
-"créer massivement et automatiquement des comptes..."
+" - pour développer ou restreindre en ajoutant plus de tags et en révisant la "
+"requête"
-#: skins/default/templates/unused/notarobot.html:10
-msgid "I am a Human Being"
-msgstr "Je suis un humain"
+#: skins/default/templates/main_page/headline.html:45
+msgid "Search tip:"
+msgstr "Conseil pour la recherche:"
-#: skins/default/templates/unused/question_counter_widget.html:78
-msgid "Please decide if you like this question or not by voting"
-msgstr "Veuillez indiquer si vous aimer ou non cette question en votant"
+#: skins/default/templates/main_page/headline.html:45
+msgid "add tags and a query to focus your search"
+msgstr "ajouter des tags et une requête pour affiner votre recherche"
-#: skins/default/templates/unused/question_counter_widget.html:84
-msgid ""
-"\n"
-" vote\n"
-" "
-msgid_plural ""
-"\n"
-" votes\n"
-" "
-msgstr[0] ""
-"\n"
-"vote"
-msgstr[1] ""
-"\n"
-"votes"
+#: skins/default/templates/main_page/javascript.html:13
+#: skins/default/templates/main_page/javascript.html:14
+msgid "mark-tag/"
+msgstr "marquer-avec-un-tag/"
-#: skins/default/templates/unused/question_counter_widget.html:93
-#: skins/default/templates/unused/question_list.html:23
-#: skins/default/templates/unused/questions_ajax.html:27
-msgid "this answer has been accepted to be correct"
-msgstr "cette réponse a été acceptée comme correcte"
+#: skins/default/templates/main_page/javascript.html:13
+msgid "interesting/"
+msgstr "interessant/"
-#: skins/default/templates/unused/question_counter_widget.html:99
-msgid ""
-"\n"
-" answer \n"
-" "
-msgid_plural ""
-"\n"
-" answers \n"
-" "
-msgstr[0] ""
-"\n"
-"réponse"
-msgstr[1] ""
-"\n"
-"réponses"
+#: skins/default/templates/main_page/javascript.html:14
+msgid "ignored/"
+msgstr "ignoree/"
-#: skins/default/templates/unused/question_counter_widget.html:111
-msgid ""
-"\n"
-" view\n"
-" "
-msgid_plural ""
-"\n"
-" views\n"
-" "
-msgstr[0] ""
-"\n"
-"visualisation"
-msgstr[1] ""
-"\n"
-"visualisations"
+# FIXME
+#: skins/default/templates/main_page/javascript.html:15
+msgid "unmark-tag/"
+msgstr "retirer-un-tag/"
-#: skins/default/templates/unused/question_list.html:15
-msgid ""
-"\n"
-" vote\n"
-" "
-msgid_plural ""
-"\n"
-" votes\n"
-" "
-msgstr[0] ""
-"\n"
-"vote"
-msgstr[1] ""
-"\n"
-"votes"
+#: skins/default/templates/main_page/nothing_found.html:4
+msgid "There are no unanswered questions here"
+msgstr "Il n'y a aucune question sans réponse"
-#: skins/default/templates/unused/question_list.html:35
-msgid ""
-"\n"
-" answer \n"
-" "
-msgid_plural ""
-"\n"
-" answers \n"
-" "
-msgstr[0] ""
-"\n"
-"reponse"
-msgstr[1] ""
-"\n"
-"reponses "
+#: skins/default/templates/main_page/nothing_found.html:7
+msgid "No favorite questions here. "
+msgstr "Aucune question favorite."
-#: skins/default/templates/unused/question_list.html:47
+#: skins/default/templates/main_page/nothing_found.html:8
+msgid "Please start (bookmark) some questions when you visit them"
+msgstr "Merci de commencer (marquer) quelques questions quand vous les visitez"
+
+#: skins/default/templates/main_page/nothing_found.html:13
+msgid "You can expand your search by "
+msgstr "Vous pouvez élargir votre recherche en"
+
+#: skins/default/templates/main_page/nothing_found.html:16
+msgid "resetting author"
+msgstr "réinitialisant l'auteur"
+
+#: skins/default/templates/main_page/nothing_found.html:19
+msgid "resetting tags"
+msgstr "réinitialisant les mots-clés (\"tags\")"
+
+#: skins/default/templates/main_page/nothing_found.html:22
+#: skins/default/templates/main_page/nothing_found.html:25
+msgid "starting over"
+msgstr "repartant de zéro"
+
+#: skins/default/templates/main_page/nothing_found.html:30
+msgid "Please always feel free to ask your question!"
+msgstr "N'hésitez pas à poser des questions !"
+
+#: skins/default/templates/main_page/sidebar.html:5
+msgid "Contributors"
+msgstr "Contributeurs"
+
+#: skins/default/templates/main_page/sidebar.html:22
+msgid "Related tags"
+msgstr "Tags associés"
+
+# ##FIXME "In: [All questions] [Opened questions]"
+# ##FIXME "Dans: [toutes les questions] [questions ouvertes]"
+# ##FIXME "Questions: [toutes] [ouvertes]" POUR GAGNER DE LA PLACE !!!
+#: skins/default/templates/main_page/tab_bar.html:5
+msgid "In:"
+msgstr "Questions:"
+
+#: skins/default/templates/main_page/tab_bar.html:14
+msgid "see unanswered questions"
+msgstr "Voir les questions sans réponses"
+
+#: skins/default/templates/main_page/tab_bar.html:20
+msgid "see your favorite questions"
+msgstr "Voir vos questions favorites"
+
+#: skins/default/templates/main_page/tab_bar.html:25
+msgid "Sort by:"
+msgstr "Trier par:"
+
+# FIXME ou bien "Annulation des emails de notification de mises à jour" ???
+#: skins/default/templates/user_profile/user.html:13
+#, python-format
+msgid "%(username)s's profile"
+msgstr "Profil de l'utilisateur %(username)s"
+
+#: skins/default/templates/user_profile/user_edit.html:4
+msgid "Edit user profile"
+msgstr "Modifier le profil utilisateur"
+
+#: skins/default/templates/user_profile/user_edit.html:7
+msgid "edit profile"
+msgstr "Modifier le profil"
+
+#: skins/default/templates/user_profile/user_edit.html:17
+#: skins/default/templates/user_profile/user_info.html:15
+msgid "change picture"
+msgstr "changer d'image"
+
+#: skins/default/templates/user_profile/user_edit.html:20
+msgid "Registered user"
+msgstr "Utilisateur enregistré"
+
+#: skins/default/templates/user_profile/user_edit.html:27
+msgid "Screen Name"
+msgstr "Pseudo"
+
+#: skins/default/templates/user_profile/user_edit.html:83
+#: skins/default/templates/user_profile/user_email_subscriptions.html:21
+msgid "Update"
+msgstr "Mettre à jour"
+
+#: skins/default/templates/user_profile/user_email_subscriptions.html:4
+#: skins/default/templates/user_profile/user_tabs.html:36
+msgid "subscriptions"
+msgstr "Abonnements aux emails"
+
+#: skins/default/templates/user_profile/user_email_subscriptions.html:7
+msgid "Email subscription settings"
+msgstr "Paramètres d'abonnement aux emails"
+
+#: skins/default/templates/user_profile/user_email_subscriptions.html:8
+msgid "email subscription settings info"
+msgstr ""
+"<span class='big strong'>Infos concernant les paramètres d'abonnement aux "
+"emails </span> Ceci vous permet de vous abonner aux questions que vous "
+"trouvez intéressantes. Vous recevrez les réponses par email. "
+
+#: skins/default/templates/user_profile/user_email_subscriptions.html:22
+msgid "Stop sending email"
+msgstr "Arrêter d'envoyer des emails"
+
+#: skins/default/templates/user_profile/user_favorites.html:4
+#: skins/default/templates/user_profile/user_tabs.html:21
+msgid "favorites"
+msgstr "favorites"
+
+#: skins/default/templates/user_profile/user_inbox.html:18
+#: skins/default/templates/user_profile/user_tabs.html:12
+msgid "inbox"
+msgstr ""
+
+#: skins/default/templates/user_profile/user_inbox.html:34
+#, fuzzy
+msgid "Sections:"
+msgstr "questions"
+
+#: skins/default/templates/user_profile/user_inbox.html:38
+#, python-format
+msgid "forum responses (%(re_count)s)"
+msgstr ""
+
+#: skins/default/templates/user_profile/user_inbox.html:43
+#, python-format
+msgid "flagged items (%(flag_count)s)"
+msgstr ""
+
+#: skins/default/templates/user_profile/user_inbox.html:49
+#, fuzzy
+msgid "select:"
+msgstr "Supprimer"
+
+#: skins/default/templates/user_profile/user_inbox.html:51
+#, fuzzy
+msgid "seen"
+msgstr "dernière connexion"
+
+#: skins/default/templates/user_profile/user_inbox.html:52
+#, fuzzy
+msgid "new"
+msgstr "date (↓)"
+
+#: skins/default/templates/user_profile/user_inbox.html:53
+#, fuzzy
+msgid "none"
+msgstr "bronze"
+
+#: skins/default/templates/user_profile/user_inbox.html:54
+#, fuzzy
+msgid "mark as seen"
+msgstr "dernière connexion"
+
+# FIXME ou "ayant reçu une récompense"
+#: skins/default/templates/user_profile/user_inbox.html:55
+#, fuzzy
+msgid "mark as new"
+msgstr "marquée comme meilleure réponse"
+
+#: skins/default/templates/user_profile/user_inbox.html:56
+msgid "dismiss"
+msgstr ""
+
+#: skins/default/templates/user_profile/user_info.html:19
+msgid "remove"
+msgstr ""
+
+#: skins/default/templates/user_profile/user_info.html:33
+msgid "update profile"
+msgstr "Mettre à jour le profil"
+
+#: skins/default/templates/user_profile/user_info.html:37
+msgid "manage login methods"
+msgstr ""
+
+#: skins/default/templates/user_profile/user_info.html:50
+msgid "real name"
+msgstr "nom réél"
+
+#: skins/default/templates/user_profile/user_info.html:55
+msgid "member for"
+msgstr "membre depuis"
+
+#: skins/default/templates/user_profile/user_info.html:60
+msgid "last seen"
+msgstr "dernière connexion"
+
+#: skins/default/templates/user_profile/user_info.html:66
+msgid "user website"
+msgstr "Site internet"
+
+#: skins/default/templates/user_profile/user_info.html:72
+msgid "location"
+msgstr "Lieu"
+
+#: skins/default/templates/user_profile/user_info.html:79
+msgid "age"
+msgstr "Age"
+
+#: skins/default/templates/user_profile/user_info.html:80
+msgid "age unit"
+msgstr "ans "
+
+#: skins/default/templates/user_profile/user_info.html:87
+msgid "todays unused votes"
+msgstr "Votes non utilisés aujourd'hui"
+
+#: skins/default/templates/user_profile/user_info.html:88
+msgid "votes left"
+msgstr "votes restants"
+
+#: skins/default/templates/user_profile/user_moderate.html:4
+#: skins/default/templates/user_profile/user_tabs.html:42
+msgid "moderation"
+msgstr "Modération"
+
+#: skins/default/templates/user_profile/user_moderate.html:8
+#, python-format
+msgid "%(username)s's current status is \"%(status)s\""
+msgstr "Le statut actuel de %(username)s est \"%(status)s\""
+
+#: skins/default/templates/user_profile/user_moderate.html:11
+msgid "User status changed"
+msgstr "Statut de l'utilisateur modifié"
+
+#: skins/default/templates/user_profile/user_moderate.html:18
+msgid "Save"
+msgstr "Enregistrer"
+
+#: skins/default/templates/user_profile/user_moderate.html:24
+#, python-format
+msgid "Your current reputation is %(reputation)s points"
+msgstr "Vous avez actuellement %(reputation)s points de réputation"
+
+#: skins/default/templates/user_profile/user_moderate.html:26
+#, python-format
+msgid "User's current reputation is %(reputation)s points"
+msgstr "Cet utilisateur a actuellement %(reputation)s points de réputation"
+
+#: skins/default/templates/user_profile/user_moderate.html:30
+msgid "User reputation changed"
+msgstr "Réputation de l'utilisateur modifiée"
+
+#: skins/default/templates/user_profile/user_moderate.html:37
+msgid "Subtract"
+msgstr "Soustraire"
+
+#: skins/default/templates/user_profile/user_moderate.html:42
+#, python-format
+msgid "Send message to %(username)s"
+msgstr "Envoyer un message à %(username)s"
+
+#: skins/default/templates/user_profile/user_moderate.html:43
msgid ""
-"\n"
-" view\n"
-" "
-msgid_plural ""
-"\n"
-" views\n"
-" "
-msgstr[0] ""
-"\n"
-"vue"
-msgstr[1] ""
-"\n"
-"vues"
+"An email will be sent to the user with 'reply-to' field set to your email "
+"address. Please make sure that your address is entered correctly."
+msgstr ""
+"Un email sera envoyé à cet utilisateur avec le champ 'reply-to' pré-"
+"renseigné avec votre adresse email, afin qu'il puisse vous répondre "
+"directement. Merci de vérifier que votre adresse email est correcte."
+
+#: skins/default/templates/user_profile/user_moderate.html:45
+msgid "Message sent"
+msgstr "Message envoyé"
+
+#: skins/default/templates/user_profile/user_moderate.html:63
+msgid "Send message"
+msgstr "Envoyer le message"
+
+# TODO demander au développeur de faire 2 entrées distinctes. Une contiendra "date (↑)" et l'autre "date"
+#: skins/default/templates/user_profile/user_recent.html:4
+#: skins/default/templates/user_profile/user_tabs.html:25
+msgid "activity"
+msgstr "actualité (↓)"
+
+#: 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 "L'évolution de votre Karma."
+
+#: skins/default/templates/user_profile/user_reputation.html:13
+#, python-format
+msgid "%(user_name)s's karma change log"
+msgstr "Evolution du karma de %(user_name)s"
+
+#: skins/default/templates/user_profile/user_stats.html:5
+#: skins/default/templates/user_profile/user_tabs.html:7
+msgid "overview"
+msgstr "aperçu"
+
+#: skins/default/templates/user_profile/user_stats.html:11
+#, python-format
+msgid "<span class=\"count\">%(counter)s</span> Question"
+msgid_plural "<span class=\"count\">%(counter)s</span> Questions"
+msgstr[0] "<span class=\"count\">%(counter)s</span> Question"
+msgstr[1] "<span class=\"count\">%(counter)s</span> Questions"
+
+#: skins/default/templates/user_profile/user_stats.html:16
+#, python-format
+msgid "<span class=\"count\">%(counter)s</span> Answer"
+msgid_plural "<span class=\"count\">%(counter)s</span> Answers"
+msgstr[0] "<span class=\"count\">%(counter)s</span> Réponse"
+msgstr[1] "<span class=\"count\">%(counter)s</span> Réponses"
+
+#: skins/default/templates/user_profile/user_stats.html:24
+#, python-format
+msgid "the answer has been voted for %(answer_score)s times"
+msgstr "Cette réponse a obtenu %(answer_score)s votes positifs"
+
+#: skins/default/templates/user_profile/user_stats.html:24
+msgid "this answer has been selected as correct"
+msgstr "Cette réponse a été sélectionnée comme correct"
+
+#: skins/default/templates/user_profile/user_stats.html:34
+#, python-format
+msgid "(%(comment_count)s comment)"
+msgid_plural "the answer has been commented %(comment_count)s times"
+msgstr[0] "(%(comment_count)s commentaire)"
+msgstr[1] "cette réponse a été commentée %(comment_count)s fois"
+
+#: skins/default/templates/user_profile/user_stats.html:44
+#, python-format
+msgid "<span class=\"count\">%(cnt)s</span> Vote"
+msgid_plural "<span class=\"count\">%(cnt)s</span> Votes "
+msgstr[0] "<span class=\"count\">%(cnt)s</span> Vote"
+msgstr[1] "<span class=\"count\">%(cnt)s</span> Votes "
+
+#: skins/default/templates/user_profile/user_stats.html:50
+msgid "thumb up"
+msgstr "J'aime (+1)"
+
+#: skins/default/templates/user_profile/user_stats.html:51
+msgid "user has voted up this many times"
+msgstr "L'utilisateur a voté positivement pour cela de nombreuses fois"
+
+#: skins/default/templates/user_profile/user_stats.html:54
+msgid "thumb down"
+msgstr "J'aime pas (-1)"
+
+#: skins/default/templates/user_profile/user_stats.html:55
+msgid "user voted down this many times"
+msgstr "L'utilisateur a voté négativement pour cela de nombreuses fois"
+
+#: skins/default/templates/user_profile/user_stats.html:63
+#, python-format
+msgid "<span class=\"count\">%(counter)s</span> Tag"
+msgid_plural "<span class=\"count\">%(counter)s</span> Tags"
+msgstr[0] "<span class=\"count\">%(counter)s</span> Mot-clé"
+msgstr[1] "<span class=\"count\">%(counter)s</span> Mots-clés"
+
+#: skins/default/templates/user_profile/user_stats.html:99
+#, python-format
+msgid "<span class=\"count\">%(counter)s</span> Badge"
+msgid_plural "<span class=\"count\">%(counter)s</span> Badges"
+msgstr[0] "<span class=\"count\">%(counter)s</span> Badge"
+msgstr[1] "<span class=\"count\">%(counter)s</span> Badges"
+
+#: skins/default/templates/user_profile/user_tabs.html:5
+msgid "User profile"
+msgstr "Profil utilisateur"
+
+#: skins/default/templates/user_profile/user_tabs.html:10 views/users.py:728
+msgid "comments and answers to others questions"
+msgstr "Commentaires et réponses à d'autres questions"
+
+#: skins/default/templates/user_profile/user_tabs.html:15
+msgid "graph of user reputation"
+msgstr "Statistiques sur la réputation de cet utilisateur"
+
+#: skins/default/templates/user_profile/user_tabs.html:17
+msgid "reputation history"
+msgstr "Historique de la réputation"
+
+#: skins/default/templates/user_profile/user_tabs.html:19
+msgid "questions that user selected as his/her favorite"
+msgstr "questions favorites de cet utilisateur"
+
+#: skins/default/templates/user_profile/user_tabs.html:23
+msgid "recent activity"
+msgstr "activité récente"
+
+#: skins/default/templates/user_profile/user_tabs.html:28 views/users.py:792
+msgid "user vote record"
+msgstr "Trace des votes de cet utilisateur"
+
+# FIXME
+#: skins/default/templates/user_profile/user_tabs.html:30
+msgid "casted votes"
+msgstr "abgegebene Stimmen"
+
+#: skins/default/templates/user_profile/user_tabs.html:34 views/users.py:897
+msgid "email subscription settings"
+msgstr "Paramètres d'abonnement aux emails"
-#: skins/default/templates/unused/question_summary_list_roll.html:13
-msgid "answers"
-msgstr "réponses"
+#: skins/default/templates/user_profile/user_tabs.html:40 views/users.py:212
+msgid "moderate this user"
+msgstr "Modérer cet utilisateur"
-#: skins/default/templates/unused/question_summary_list_roll.html:14
+#: skins/default/templates/user_profile/user_votes.html:4
msgid "votes"
msgstr "votes"
-#: skins/default/templates/unused/question_summary_list_roll.html:15
-msgid "views"
-msgstr "vues"
+# FIXME coquille dans phrase anglaise ???
+#: skins/default/templates/user_profile/users_questions.html:9
+#: skins/default/templates/user_profile/users_questions.html:17
+#, fuzzy, python-format
+msgid "this questions was selected as favorite %(cnt)s time"
+msgid_plural "this questions was selected as favorite %(cnt)s times"
+msgstr[0] "Cette question a été sélectionnée favorite"
+msgstr[1] "Cette question a été sélectionnée favorite"
+
+#: skins/default/templates/user_profile/users_questions.html:10
+msgid "thumb-up on"
+msgstr "J'aime (+1) activé"
+
+#: skins/default/templates/user_profile/users_questions.html:18
+msgid "thumb-up off"
+msgstr "J'aime (+1) désactivé"
-#: templatetags/extra_filters.py:168 templatetags/extra_filters_jinja.py:234
+#: templatetags/extra_filters.py:145 templatetags/extra_filters_jinja.py:227
msgid "no items in counter"
msgstr "0"
-#: utils/decorators.py:82 views/commands.py:132 views/commands.py:149
+#: utils/decorators.py:82 views/commands.py:128 views/commands.py:145
msgid "Oops, apologies - there was some error"
msgstr ""
@@ -5521,35 +5703,47 @@ msgid_plural "%(min)d mins ago"
msgstr[0] "il y a %(min)d minute"
msgstr[1] "il y a %(min)d minutes"
-#: views/commands.py:42
+#: views/avatar_views.py:94
+msgid "Successfully uploaded a new avatar."
+msgstr ""
+
+#: views/avatar_views.py:134
+msgid "Successfully updated your avatar."
+msgstr ""
+
+#: views/avatar_views.py:173
+msgid "Successfully deleted the requested avatars."
+msgstr ""
+
+#: views/commands.py:38
msgid "anonymous users cannot vote"
msgstr "les utilisateurs anonymes ne peuvent pas voter"
-#: views/commands.py:62
+#: views/commands.py:58
msgid "Sorry you ran out of votes for today"
msgstr "Désolé, vous avez épuisé votre crédit de votes pour ajourd'hui"
-#: views/commands.py:68
+#: views/commands.py:64
#, python-format
msgid "You have %(votes_left)s votes left for today"
msgstr "Il vous reste un crédit de %(votes_left)s votes pour aujourd'hui"
-#: views/commands.py:139
+#: views/commands.py:135
#, fuzzy
msgid "Sorry, but anonymous users cannot access the inbox"
msgstr ""
"Désolé, mais les utilisateurs anonymes ne peuvent aps accepter les réponses"
-#: views/commands.py:209
+#: views/commands.py:205
msgid "Sorry, something is not right here..."
msgstr "Désolé, il semble y avoir un problème..."
-#: views/commands.py:224
+#: views/commands.py:220
msgid "Sorry, but anonymous users cannot accept answers"
msgstr ""
"Désolé, mais les utilisateurs anonymes ne peuvent aps accepter les réponses"
-#: views/commands.py:305
+#: views/commands.py:301
#, python-format
msgid "subscription saved, %(email)s needs validation, see %(details_url)s"
msgstr ""
@@ -5557,42 +5751,47 @@ msgstr ""
"email %(email)s ; <a href='%(details_url)s'>Cliquez ici pour en savoir plus</"
"a>."
-#: views/commands.py:313
+#: views/commands.py:309
msgid "email update frequency has been set to daily"
msgstr ""
"La fréquence d'envoi des emails de notification de mises à jour est "
"désormais \"quotidienne\"."
-#: views/commands.py:371
-#, fuzzy
-msgid "Bad request"
-msgstr "Requête invalide"
+#: views/commands.py:413
+#, python-format
+msgid "Tag subscription was canceled (<a href=\"%(url)s\">undo</a>)."
+msgstr ""
+
+#: views/commands.py:422
+#, python-format
+msgid "Please sign in to subscribe for: %(tags)s"
+msgstr ""
# FIXME à vérifier
-#: views/meta.py:68
+#: views/meta.py:63
msgid "Q&A forum feedback"
msgstr ""
"Vos remarques, critiques et suggestions sur notre forum de questions/réponses"
-#: views/meta.py:69
+#: views/meta.py:64
msgid "Thanks for the feedback!"
msgstr "Merci pour vos remarques !"
-#: views/meta.py:79
+#: views/meta.py:72
msgid "We look forward to hearing your feedback! Please, give it next time :)"
msgstr ""
"Nous aimerions bien savoir ce que vous pensez de notre service de questions/"
"réponses ! Lors de votre prochaine visite, n'hésitez pas à nous envoyer vos "
"remarques, critiques et suggestions ;o)"
-#: views/readers.py:188
+#: views/readers.py:165
#, python-format
msgid "%(badge_count)d %(badge_level)s badge"
msgid_plural "%(badge_count)d %(badge_level)s badges"
msgstr[0] "%(badge_count)d %(badge_level)s badge"
msgstr[1] "%(badge_count)d %(badge_level)s badges"
-#: views/readers.py:425
+#: views/readers.py:388
#, fuzzy
msgid ""
"Sorry, the comment you are looking for has been deleted and is no longer "
@@ -5600,16 +5799,16 @@ msgid ""
msgstr "Désolé, cette question a été supprimée, et n'est plus accessible."
# FIXME
-#: views/users.py:217
+#: views/users.py:213
msgid "moderate user"
msgstr "utilisateur modéré"
# FIXME ou bien "Annulation des emails de notification de mises à jour" ???
-#: views/users.py:376
+#: views/users.py:377
msgid "user profile"
msgstr "profil de l'utilisateur"
-#: views/users.py:377
+#: views/users.py:378
msgid "user profile overview"
msgstr "infOs générales sur le profil de l'utilisateur"
@@ -5621,39 +5820,39 @@ msgstr "activité récente de l'utilisateur"
msgid "profile - recent activity"
msgstr "profil - activité récente"
-#: views/users.py:730
+#: views/users.py:729
msgid "profile - responses"
msgstr "profil - réactions"
-#: views/users.py:795
+#: views/users.py:793
msgid "profile - votes"
msgstr "profil - votes"
-#: views/users.py:833
+#: views/users.py:828
msgid "user reputation in the community"
msgstr "réputation de l'utilisateur au sein de la communauté"
-#: views/users.py:834
+#: views/users.py:829
msgid "profile - user reputation"
msgstr "profil - réputation de l'utilisateur"
-#: views/users.py:862
+#: views/users.py:856
msgid "users favorite questions"
msgstr "questions favorites des utilisateurs"
-#: views/users.py:863
+#: views/users.py:857
msgid "profile - favorite questions"
msgstr "profil - questions favorites"
-#: views/users.py:883 views/users.py:887
+#: views/users.py:876 views/users.py:880
msgid "changes saved"
msgstr "Modifications enregistrées."
-#: views/users.py:893
+#: views/users.py:886
msgid "email updates canceled"
msgstr "Modification(s) d'email(s) annulée(s)"
-#: views/users.py:905
+#: views/users.py:898
msgid "profile - email subscriptions"
msgstr "profil - abonnements emails"
@@ -5662,24 +5861,24 @@ msgid "Sorry, anonymous users cannot upload files"
msgstr ""
"Désolé, les utilisateurs anonymes ne peuvent pas transférer de fichiers"
-#: views/writers.py:65
+#: views/writers.py:66
#, python-format
msgid "allowed file types are '%(file_types)s'"
msgstr "Les types de fichiers autoprisés sont '%(file_types)s'"
-#: views/writers.py:88
+#: views/writers.py:89
#, python-format
msgid "maximum upload file size is %(file_size)sK"
msgstr ""
"La taille maximale autorisée pour un fichier est de %(file_size)s Kilo-octets"
-#: views/writers.py:96
+#: views/writers.py:97
msgid "Error uploading file. Please contact the site administrator. Thank you."
msgstr ""
"Une erreur est survenue lors du transfert du fichier sur notre serveur. "
"Merci de contacter l'administrateur."
-#: views/writers.py:452
+#: views/writers.py:555
#, python-format
msgid ""
"Sorry, you appear to be logged out and cannot post comments. Please <a href="
@@ -5689,13 +5888,13 @@ msgstr ""
"déconnecté. Merci d'essayer de vous <a href=\"%(sign_in_url)s\">reconnecter</"
"a>."
-#: views/writers.py:497
+#: views/writers.py:600
#, fuzzy
msgid "Sorry, anonymous users cannot edit comments"
msgstr ""
"Désolé, les utilisateurs anonymes ne peuvent pas transférer de fichiers"
-#: views/writers.py:505
+#: views/writers.py:608
#, python-format
msgid ""
"Sorry, you appear to be logged out and cannot delete comments. Please <a "
@@ -5705,11 +5904,217 @@ msgstr ""
"déconnecté. Merci d'essayer de vous <a href=\"%(sign_in_url)s\">reconnecter</"
"a>."
-#: views/writers.py:526
+#: views/writers.py:629
msgid "sorry, we seem to have some technical difficulties"
msgstr ""
"Désolé, nous rencontrons apparemment des difficultés d'ordre techniques..."
+#~ msgid "community wiki"
+#~ msgstr "Wiki communautaire"
+
+#~ msgid "Location"
+#~ msgstr "Lieu"
+
+#~ msgid "command/"
+#~ msgstr "commande/"
+
+#~ msgid "search/"
+#~ msgstr "chercher/"
+
+#~ msgid "allow only selected tags"
+#~ msgstr "autoriser uniquement les mots-clés sélectionnés"
+
+#~ msgid "Email verification subject line"
+#~ msgstr "Vérification de votre adresse email"
+
+#, fuzzy
+#~ msgid "Posted 10 comments"
+#~ msgstr "ajouter des commentaires"
+
+#~ msgid "About"
+#~ msgstr "A propos"
+
+#~ msgid "how to validate email title"
+#~ msgstr "Comment valider le titre du courriel"
+
+# FIXME
+#~ msgid ""
+#~ "how to validate email info with %(send_email_key_url)s %(gravatar_faq_url)"
+#~ "s"
+#~ msgstr ""
+#~ "Informations concernant la procédure de validation d'email avec "
+#~ "%(send_email_key_url)s %(gravatar_faq_url)s"
+
+#~ msgid "."
+#~ msgstr "."
+
+#~ msgid ""
+#~ "As a registered user you can login with your OpenID, log out of the site "
+#~ "or permanently remove your account."
+#~ msgstr ""
+#~ "Etant un utilisateur enregistré, vous pouvez vous connecter avec votre "
+#~ "OpenID, vous déconnecter du site, ou supprimer définitivement votre "
+#~ "compte."
+
+#~ msgid "Logout now"
+#~ msgstr "Se déconnecter"
+
+#~ msgid "see questions tagged '%(tag_name)s'"
+#~ msgstr "Voir les questions marquées par '%(tag_name)s' "
+
+#, fuzzy
+#~ msgid ""
+#~ "\n"
+#~ " %(q_num)s question\n"
+#~ " "
+#~ msgid_plural ""
+#~ "\n"
+#~ " %(q_num)s questions\n"
+#~ " "
+#~ msgstr[0] ""
+#~ "\n"
+#~ " Nous avons trouvé %(q_num)s question"
+#~ msgstr[1] ""
+#~ "\n"
+#~ " Nous avons trouvé %(q_num)s questions"
+
+#~ msgid "tagged"
+#~ msgstr "marquée avec des mots-clés"
+
+#~ msgid "remove '%(tag_name)s' from the list of interesting tags"
+#~ msgstr "Retirer '%(tag_name)s' de la liste des tags intéressants"
+
+#~ msgid "remove '%(tag_name)s' from the list of ignored tags"
+#~ msgstr "Retirer '%(tag_name)s' de la liste des tags ignorés"
+
+#~ msgid "keep ignored questions hidden"
+#~ msgstr "Continuer de masquer les questions ignorées"
+
+#~ msgid ""
+#~ "see other questions with %(view_user)s's contributions tagged '%(tag_name)"
+#~ "s' "
+#~ msgstr ""
+#~ "voir d'autres questions de %(view_user)s marquées avec les mots-clés "
+#~ "'%(tag_name)s'"
+
+#~ msgid "home"
+#~ msgstr "accueil"
+
+#~ msgid "Please prove that you are a Human Being"
+#~ msgstr ""
+#~ "Le captcha ci-dessous nous permet de vous assurer que vous êtes un "
+#~ "humain. Ceci permet de lutter contre les spammeurs, qui utilisent des "
+#~ "robots pour créer massivement et automatiquement des comptes..."
+
+#~ msgid "I am a Human Being"
+#~ msgstr "Je suis un humain"
+
+#~ msgid "Please decide if you like this question or not by voting"
+#~ msgstr "Veuillez indiquer si vous aimer ou non cette question en votant"
+
+#~ msgid ""
+#~ "\n"
+#~ " vote\n"
+#~ " "
+#~ msgid_plural ""
+#~ "\n"
+#~ " votes\n"
+#~ " "
+#~ msgstr[0] ""
+#~ "\n"
+#~ "vote"
+#~ msgstr[1] ""
+#~ "\n"
+#~ "votes"
+
+#~ msgid "this answer has been accepted to be correct"
+#~ msgstr "cette réponse a été acceptée comme correcte"
+
+#~ msgid ""
+#~ "\n"
+#~ " answer \n"
+#~ " "
+#~ msgid_plural ""
+#~ "\n"
+#~ " answers \n"
+#~ " "
+#~ msgstr[0] ""
+#~ "\n"
+#~ "réponse"
+#~ msgstr[1] ""
+#~ "\n"
+#~ "réponses"
+
+#~ msgid ""
+#~ "\n"
+#~ " view\n"
+#~ " "
+#~ msgid_plural ""
+#~ "\n"
+#~ " views\n"
+#~ " "
+#~ msgstr[0] ""
+#~ "\n"
+#~ "visualisation"
+#~ msgstr[1] ""
+#~ "\n"
+#~ "visualisations"
+
+#~ msgid ""
+#~ "\n"
+#~ " vote\n"
+#~ " "
+#~ msgid_plural ""
+#~ "\n"
+#~ " votes\n"
+#~ " "
+#~ msgstr[0] ""
+#~ "\n"
+#~ "vote"
+#~ msgstr[1] ""
+#~ "\n"
+#~ "votes"
+
+#~ msgid ""
+#~ "\n"
+#~ " answer \n"
+#~ " "
+#~ msgid_plural ""
+#~ "\n"
+#~ " answers \n"
+#~ " "
+#~ msgstr[0] ""
+#~ "\n"
+#~ "reponse"
+#~ msgstr[1] ""
+#~ "\n"
+#~ "reponses "
+
+#~ msgid ""
+#~ "\n"
+#~ " view\n"
+#~ " "
+#~ msgid_plural ""
+#~ "\n"
+#~ " views\n"
+#~ " "
+#~ msgstr[0] ""
+#~ "\n"
+#~ "vue"
+#~ msgstr[1] ""
+#~ "\n"
+#~ "vues"
+
+#~ msgid "answers"
+#~ msgstr "réponses"
+
+#~ msgid "views"
+#~ msgstr "vues"
+
+#, fuzzy
+#~ msgid "Bad request"
+#~ msgstr "Requête invalide"
+
#~ msgid "Askbot"
#~ msgstr "Askbot"
@@ -5843,15 +6248,9 @@ msgstr ""
#~ msgid "Active in many different tags"
#~ msgstr "Actif dans de nombreuses catégories de questions"
-#~ msgid "Expert"
-#~ msgstr "Expert"
-
#~ msgid "expert"
#~ msgstr "expert"
-#~ msgid "Very active in one tag"
-#~ msgstr "Très actif dans une catégorie de questions"
-
#~ msgid "Yearling"
#~ msgstr "Yearling (moins d'un an d'activité)"
@@ -5888,15 +6287,9 @@ msgstr ""
#~ msgid "necromancer"
#~ msgstr "necromancien"
-#~ msgid "Taxonomist"
-#~ msgstr "Taxonomiste"
-
#~ msgid "taxonomist"
#~ msgstr "taxonomiste"
-#~ msgid "Created a tag used by 50 questions"
-#~ msgstr "A créé un mot-clé (tag) utilisé par 50 questions"
-
#, fuzzy
#~ msgid "%(type)s"
#~ msgstr "le %(date)s"
@@ -5915,18 +6308,12 @@ msgstr ""
#~ msgid "email"
#~ msgstr "email"
-#~ msgid "anonymous"
-#~ msgstr "anonyme"
-
#~ msgid "Message body:"
#~ msgstr "Corps du message:"
#~ msgid "Thank you for registering at our Q&A forum!"
#~ msgstr "Merci de vous être inscrit sur notre forum de Questions/Réponses !"
-#~ msgid "Your account details are:"
-#~ msgstr "Informations détaillées sur votre compte:"
-
#~ msgid "Username:"
#~ msgstr "Nom d'utilisateur :"
@@ -6112,9 +6499,6 @@ msgstr ""
#~ msgid "Change openid associated to your account"
#~ msgstr "Changer l'OpenID associé à votre compte"
-#~ msgid "Delete account"
-#~ msgstr "Supprimer le compte"
-
#~ msgid "Erase your username and all your data from website"
#~ msgstr ""
#~ "Supprimer votre nom d'utilisateur et toutes vos données de notre site"
@@ -6478,9 +6862,6 @@ msgstr ""
#~ msgid "Open the previously closed question"
#~ msgstr "Ouvrir la question précédemment close"
-#~ msgid "The question was closed for the following reason "
-#~ msgstr "Cette question a été close pour la raison suivante "
-
#~ msgid "reason - leave blank in english"
#~ msgstr "raison"
diff --git a/askbot/locale/ru/LC_MESSAGES/django.po b/askbot/locale/ru/LC_MESSAGES/django.po
index b9bbf7f9..d717afc0 100644
--- a/askbot/locale/ru/LC_MESSAGES/django.po
+++ b/askbot/locale/ru/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-12-23 16:49-0600\n"
+"POT-Creation-Date: 2011-05-16 01:42-0500\n"
"PO-Revision-Date: 2010-12-22 20:39\n"
"Last-Translator: <litnimaxster@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -18,7 +18,7 @@ msgstr ""
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2\n"
-#: exceptions.py:9
+#: exceptions.py:13
msgid "Sorry, but anonymous visitors cannot access this function"
msgstr ""
"Извините, но к Ñожалению Ñта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð½ÐµÐ´Ð¾Ñтупна Ð´Ð»Ñ Ð½ÐµÐ°Ð²Ñ‚Ð¾Ñ€Ð¸Ð·Ð¾Ð²Ð°Ð½Ð½Ñ‹Ñ… "
@@ -32,45 +32,59 @@ msgstr "-"
msgid "latest questions"
msgstr "новые вопроÑÑ‹"
-#: forms.py:54 skins/default/templates/answer_edit_tips.html:43
-#: skins/default/templates/answer_edit_tips.html:47
-#: skins/default/templates/question_edit_tips.html:40
-#: skins/default/templates/question_edit_tips.html:45
+#: forms.py:73
+#, fuzzy
+msgid "select country"
+msgstr "Удалить аккаунт"
+
+#: forms.py:82
+msgid "Country"
+msgstr ""
+
+#: forms.py:90
+#, fuzzy
+msgid "Country field is required"
+msgstr "Ñто поле обÑзательное"
+
+#: forms.py:103 skins/default/templates/blocks/answer_edit_tips.html:43
+#: skins/default/templates/blocks/answer_edit_tips.html:47
+#: skins/default/templates/blocks/question_edit_tips.html:38
+#: skins/default/templates/blocks/question_edit_tips.html:43
msgid "title"
msgstr "заголовок"
-#: forms.py:55
+#: forms.py:104
msgid "please enter a descriptive title for your question"
msgstr "пожалуйÑта, введите заголовок, Ñодержащий Ñуть вашего вопроÑа"
-#: forms.py:60
+#: forms.py:109
msgid "title must be > 10 characters"
msgstr "заголовок должен иметь Ñ…Ð¾Ñ‚Ñ Ð±Ñ‹ 10 букв"
-#: forms.py:69
+#: forms.py:118
msgid "content"
msgstr "оÑновное Ñодержание"
-#: forms.py:75
+#: forms.py:124
msgid "question content must be > 10 characters"
msgstr "Ñодержание вопроÑа должно быть более 10-ти букв"
-#: forms.py:84 skins/default/templates/header.html:31
+#: forms.py:133 skins/default/templates/blocks/header.html:22
msgid "tags"
msgstr "Ñ‚Ñги"
-#: forms.py:86
+#: forms.py:135
msgid ""
"Tags are short keywords, with no spaces within. Up to five tags can be used."
msgstr ""
"Теги - ключевые Ñлова, характеризующие вопроÑ. Теги отделÑÑŽÑ‚ÑÑ Ð¿Ñ€Ð¾Ð±ÐµÐ»Ð¾Ð¼, "
"может быть иÑпользовано до 5 тегов."
-#: forms.py:93 skins/default/templates/question_retag.html:78
+#: forms.py:142 skins/default/templates/question_retag.html:58
msgid "tags are required"
msgstr "теги (ключевые Ñлова) обÑзательны"
-#: forms.py:102
+#: forms.py:151
#, python-format
msgid "please use %(tag_count)d tag or less"
msgid_plural "please use %(tag_count)d tags or less"
@@ -78,7 +92,7 @@ msgstr[0] "пожалуйÑта введите не более %(tag_count)d ÑÐ
msgstr[1] "пожалуйÑта введите не более %(tag_count)d Ñлова"
msgstr[2] "пожалуйÑта введите не более %(tag_count)d Ñлов"
-#: forms.py:111
+#: forms.py:160
#, python-format
msgid "each tag must be shorter than %(max_chars)d character"
msgid_plural "each tag must be shorter than %(max_chars)d characters"
@@ -86,17 +100,15 @@ msgstr[0] "каждое Ñлово должно быть не более %(max_c
msgstr[1] "каждое Ñлово должно быть не более %(max_chars)d буквы"
msgstr[2] "каждое Ñлово должно быть не более %(max_chars)d букв"
-#: forms.py:119
+#: forms.py:168
msgid "use-these-chars-in-tags"
msgstr "допуÑкаетÑÑ Ð¸Ñпользование только Ñимвола Ð´ÐµÑ„Ð¸Ñ \"-\""
-#: forms.py:130
-#: skins/default/templates/unused/question_summary_list_roll.html:26
-#: skins/default/templates/unused/question_summary_list_roll.html:38
-msgid "community wiki"
-msgstr "вики ÑообщеÑтва"
+#: forms.py:203
+msgid "community wiki (karma is not awarded & many others can edit wiki post)"
+msgstr ""
-#: forms.py:131
+#: forms.py:204
msgid ""
"if you choose community wiki option, the question and answer do not generate "
"points and name of author will not be shown"
@@ -104,11 +116,11 @@ msgstr ""
"еÑли вы отметите \"вики ÑообщеÑтва\", то Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð¸ ответ не дадут вам кармы и "
"Ð¸Ð¼Ñ Ð°Ð²Ñ‚Ð¾Ñ€Ð° не будет отображатьÑÑ"
-#: forms.py:147
+#: forms.py:220
msgid "update summary:"
msgstr "Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾Ð± обновлениÑÑ…:"
-#: forms.py:148
+#: forms.py:221
msgid ""
"enter a brief summary of your revision (e.g. fixed spelling, grammar, "
"improved style, this field is optional)"
@@ -116,53 +128,53 @@ msgstr ""
"еÑли у Ð’Ð°Ñ ÐµÑÑ‚ÑŒ желание, то кратко опишите здеÑÑŒ Ñуть вашей правки (например "
"- иÑправление орфографии, грамматики, ÑтилÑ)"
-#: forms.py:204
+#: forms.py:284
msgid "Enter number of points to add or subtract"
msgstr "Введите количеÑтво очков которые Ð’Ñ‹ ÑобираетеÑÑŒ вычеÑÑ‚ÑŒ или добавить."
-#: forms.py:218 const/__init__.py:220
+#: forms.py:298 const/__init__.py:230
msgid "approved"
msgstr "проÑтой гражданин"
-#: forms.py:219 const/__init__.py:221
+#: forms.py:299 const/__init__.py:231
msgid "watched"
msgstr "поднадзорный пользователь"
-#: forms.py:220 const/__init__.py:222
+#: forms.py:300 const/__init__.py:232
msgid "suspended"
msgstr "ограниченный в правах"
-#: forms.py:221 const/__init__.py:223
+#: forms.py:301 const/__init__.py:233
msgid "blocked"
msgstr "заблокированный пользователь"
-#: forms.py:223 const/__init__.py:219
+#: forms.py:303 const/__init__.py:229
msgid "moderator"
msgstr "модератор"
-#: forms.py:243
+#: forms.py:323
msgid "Change status to"
msgstr "Измененить ÑÑ‚Ð°Ñ‚ÑƒÑ Ð½Ð°"
-#: forms.py:270
+#: forms.py:350
msgid "which one?"
msgstr "который?"
-#: forms.py:291
+#: forms.py:371
msgid "Cannot change own status"
msgstr "Извините, но ÑобÑтвенный ÑÑ‚Ð°Ñ‚ÑƒÑ Ð¸Ð·Ð¼ÐµÐ½Ð¸Ñ‚ÑŒ нельзÑ"
-#: forms.py:297
+#: forms.py:377
msgid "Cannot turn other user to moderator"
msgstr ""
"Извините, но у Ð’Ð°Ñ Ð½ÐµÑ‚ возможноÑти давать другим пользователÑм ÑÑ‚Ð°Ñ‚ÑƒÑ "
"модератора"
-#: forms.py:304
+#: forms.py:384
msgid "Cannot change status of another moderator"
msgstr "Извините, но у Ð’Ð°Ñ Ð½ÐµÑ‚ возможноÑти изменÑÑ‚ÑŒ ÑÑ‚Ð°Ñ‚ÑƒÑ Ð¼Ð¾Ð´ÐµÑ€Ð°Ñ‚Ð¾Ñ€Ð¾Ð²"
-#: forms.py:310
+#: forms.py:390
#, python-format
msgid ""
"If you wish to change %(username)s's status, please make a meaningful "
@@ -171,216 +183,235 @@ msgstr ""
"ЕÑли Ð’Ñ‹ хотите изменить ÑÑ‚Ð°Ñ‚ÑƒÑ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %(username)s, Ñто можно Ñделать "
"ÑдеÑÑŒ"
-#: forms.py:319
+#: forms.py:399
msgid "Subject line"
msgstr "Тема"
-#: forms.py:326
+#: forms.py:406
msgid "Message text"
msgstr "ТекÑÑ‚ ÑообщениÑ"
-#: forms.py:403
+#: forms.py:489
msgid "Your name:"
msgstr "Ваше имÑ:"
-#: forms.py:404
+#: forms.py:490
msgid "Email (not shared with anyone):"
msgstr "ÐÐ´Ñ€ÐµÑ Ñлектронной почты (держитÑÑ Ð² Ñекрете):"
-#: forms.py:405
+#: forms.py:491
msgid "Your message:"
msgstr "Ваше Ñообщение:"
-#: forms.py:492
-msgid "this email does not have to be linked to gravatar"
+#: forms.py:528
+#, fuzzy
+msgid "ask anonymously"
+msgstr "анонимный"
+
+#: forms.py:530
+msgid "Check if you do not want to reveal your name when asking this question"
+msgstr ""
+
+#: forms.py:672
+msgid ""
+"You have asked this question anonymously, if you decide to reveal your "
+"identity, please check this box."
+msgstr ""
+
+#: forms.py:676
+msgid "reveal identity"
+msgstr ""
+
+#: forms.py:734
+msgid ""
+"Sorry, only owner of the anonymous question can reveal his or her identity, "
+"please uncheck the box"
+msgstr ""
+
+#: forms.py:747
+msgid ""
+"Sorry, apparently rules have just changed - it is no longer possible to ask "
+"anonymously. Please either check the \"reveal identity\" box or reload this "
+"page and try editing the question again."
+msgstr ""
+
+#: forms.py:785
+#, fuzzy
+msgid "this email will be linked to gravatar"
msgstr "Этот Ð°Ð´Ñ€ÐµÑ Ð°ÑÑоциирован Ñ Ð³Ð»Ð¾Ð±Ð°Ð»ÑŒÐ½Ñ‹Ð¼ аватаром (gravatar)"
-#: forms.py:499
+#: forms.py:792
msgid "Real name"
msgstr "ÐаÑтоÑщее имÑ"
-#: forms.py:506
+#: forms.py:799
msgid "Website"
msgstr "ВебÑайт"
-#: forms.py:513
-msgid "Location"
-msgstr "МеÑтоположение"
+#: forms.py:806
+#, fuzzy
+msgid "City"
+msgstr "Критик"
+
+#: forms.py:815
+#, fuzzy
+msgid "Show country"
+msgstr "Показывать подвал Ñтраницы."
-#: forms.py:520
+#: forms.py:820
msgid "Date of birth"
msgstr "День рождениÑ"
-#: forms.py:521
+#: forms.py:821
msgid "will not be shown, used to calculate age, format: YYYY-MM-DD"
msgstr "показываетÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ возраÑÑ‚, формат ГГГГ-ММ-ДД"
-#: forms.py:527
+#: forms.py:827
msgid "Profile"
msgstr "Профиль"
-#: forms.py:536
+#: forms.py:836
msgid "Screen name"
msgstr "Ðазвание Ñкрана"
-#: forms.py:561 forms.py:562
+#: forms.py:867 forms.py:868
msgid "this email has already been registered, please use another one"
msgstr "Ñтот Ð°Ð´Ñ€ÐµÑ ÑƒÐ¶Ðµ зарегиÑтрирован, пожалуйÑта введите другой"
-#: forms.py:568
+#: forms.py:875
msgid "Choose email tag filter"
msgstr "Выберите тип фильтра по темам (ключевым Ñловам)"
-#: forms.py:607
+#: forms.py:915
msgid "Asked by me"
msgstr "Заданные мной"
-#: forms.py:610
+#: forms.py:918
msgid "Answered by me"
msgstr "Отвеченные мной"
-#: forms.py:613
+#: forms.py:921
msgid "Individually selected"
msgstr "Выбранные индивидуально"
-#: forms.py:616
+#: forms.py:924
msgid "Entire forum (tag filtered)"
msgstr "ВеÑÑŒ форум (фильтрованный по темам)"
-#: forms.py:620
+#: forms.py:928
msgid "Comments and posts mentioning me"
msgstr "Ð¡Ð¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ðµ упоминают моё имÑ"
-#: forms.py:678
+#: forms.py:998
msgid "okay, let's try!"
msgstr "хорошо - попробуем!"
-#: forms.py:679
+#: forms.py:999
msgid "no community email please, thanks"
msgstr "ÑпаÑибо - не надо"
-#: forms.py:683
+#: forms.py:1003
msgid "please choose one of the options above"
msgstr "пожалуйÑта Ñделайте Ваш выбор (Ñм. выше)"
-#: urls.py:42
+#: urls.py:44
msgid "about/"
msgstr ""
-#: urls.py:43 conf/site_settings.py:79
+#: urls.py:45 conf/site_settings.py:79
msgid "faq/"
msgstr ""
-#: urls.py:44
+#: urls.py:46
msgid "privacy/"
msgstr ""
-#: urls.py:45
+#: urls.py:47
msgid "logout/"
msgstr ""
-#: urls.py:47 urls.py:52
+#: urls.py:49 urls.py:54
msgid "answers/"
msgstr "otvety/"
-#: urls.py:47 urls.py:68 urls.py:164
+#: urls.py:49 urls.py:75 urls.py:186
msgid "edit/"
msgstr ""
-#: urls.py:52 urls.py:98
+#: urls.py:54 urls.py:105
msgid "revisions/"
msgstr ""
-#: urls.py:58 urls.py:63 urls.py:68 urls.py:73 urls.py:78 urls.py:83
-#: urls.py:88 urls.py:93 urls.py:98 skins/default/templates/question.html:431
+#: urls.py:60 urls.py:70 urls.py:75 urls.py:80 urls.py:85 urls.py:90
+#: urls.py:95 urls.py:100 urls.py:105
+#: skins/default/templates/question.html:436
msgid "questions/"
msgstr "voprosy/"
-#: urls.py:63
+#: urls.py:70
msgid "ask/"
msgstr "sprashivaem/"
-#: urls.py:73
+#: urls.py:80
msgid "retag/"
msgstr "izmenyaem-temy/"
-#: urls.py:78
+#: urls.py:85
msgid "close/"
msgstr "zakryvaem/"
-#: urls.py:83
+#: urls.py:90
msgid "reopen/"
msgstr "otkryvaem-zanovo/"
-#: urls.py:88
+#: urls.py:95
msgid "answer/"
msgstr "otvet/"
-#: urls.py:93 skins/default/templates/question.html:431
+#: urls.py:100 skins/default/templates/question.html:436
msgid "vote/"
msgstr "golosuem/"
-#: urls.py:114
-msgid "command/"
-msgstr "komanda/"
-
-#: urls.py:130 skins/default/templates/question.html:429
-#: skins/default/templates/questions.html:254
+#: urls.py:132 skins/default/templates/question.html:434
+#: skins/default/templates/main_page/javascript.html:18
msgid "question/"
msgstr "vopros/"
-#: urls.py:135
+#: urls.py:137
msgid "tags/"
msgstr "temy/"
-#: urls.py:140 urls.py:146 skins/default/templates/questions.html:249
-#: skins/default/templates/questions.html:250
-msgid "mark-tag/"
-msgstr "pomechayem-temy/"
-
-#: urls.py:140 skins/default/templates/questions.html:249
-msgid "interesting/"
-msgstr "interesnaya/"
-
-#: urls.py:146 skins/default/templates/questions.html:250
-msgid "ignored/"
-msgstr "neinteresnaya/"
-
-#: urls.py:152 skins/default/templates/questions.html:251
-msgid "unmark-tag/"
-msgstr "otmenyaem-pometku-temy/"
+#: urls.py:175
+msgid "subscribe-for-tags/"
+msgstr ""
-#: urls.py:158 urls.py:164 urls.py:169
-#: skins/default/templates/questions.html:255
+#: urls.py:180 urls.py:186 urls.py:191
+#: skins/default/templates/main_page/javascript.html:19
msgid "users/"
msgstr "lyudi/"
-#: urls.py:174 urls.py:179
+#: urls.py:196 urls.py:201
msgid "badges/"
msgstr "nagrady/"
-#: urls.py:184
+#: urls.py:206
msgid "messages/"
msgstr "soobsheniya/"
-#: urls.py:184
+#: urls.py:206
msgid "markread/"
msgstr "otmechaem-prochitannoye/"
-#: urls.py:200
+#: urls.py:222
msgid "upload/"
msgstr "zagruzhaem-file/"
-#: urls.py:201
-msgid "search/"
-msgstr "poisk/"
-
-#: urls.py:202
+#: urls.py:223
msgid "feedback/"
msgstr "obratnaya-svyaz/"
-#: urls.py:203 setup_templates/settings.py:182
-#: skins/default/templates/authopenid/signin.html:249
+#: urls.py:224 setup_templates/settings.py:202
+#: skins/default/templates/authopenid/providers_javascript.html:7
msgid "account/"
msgstr "account/"
@@ -472,19 +503,41 @@ msgstr "ПопулÑрный вопроÑ: минимальное количеÑ
msgid "Stellar Question: minimum stars"
msgstr "Гениальный вопроÑ: минимальное количеÑтво закладок"
-#: conf/email.py:12
+#: conf/badges.py:210
+msgid "Commentator: minimum comments"
+msgstr ""
+
+#: conf/badges.py:219
+msgid "Taxonomist: minimum tag use count"
+msgstr ""
+
+#: conf/badges.py:228
+msgid "Enthusiast: minimum days"
+msgstr ""
+
+#: conf/email.py:14
msgid "Email and email alert settings"
msgstr "Ð­Ð»ÐµÐºÑ‚Ñ€Ð¾Ð½Ð½Ð°Ñ Ð¿Ð¾Ñ‡Ñ‚Ð° и ÑиÑтема оповещений"
-#: conf/email.py:20
+#: conf/email.py:22
+msgid "Prefix for the email subject line"
+msgstr "ÐŸÑ€ÐµÑ„Ð¸ÐºÑ Ð´Ð»Ñ Ñлектронной почты в Ñтроке темы"
+
+#: conf/email.py:24
+msgid ""
+"This setting takes default from the django settingEMAIL_SUBJECT_PREFIX. A "
+"value entered here will overridethe default."
+msgstr ""
+
+#: conf/email.py:36
msgid "Maximum number of news entries in an email alert"
msgstr "МакÑимальное количеÑтво новоÑтей в оповеÑтительном Ñообщении"
-#: conf/email.py:30
+#: conf/email.py:46
msgid "Default news notification frequency"
msgstr "ÐœÐ¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ñ‡Ð°Ñтота раÑÑылки Ñообщений по умолчанию"
-#: conf/email.py:32
+#: conf/email.py:48
msgid ""
"This option currently defines default frequency of emailed updates in the "
"following five categories: questions asked by user, answered by user, "
@@ -496,35 +549,87 @@ msgstr ""
"отдельно, вÑе вопроÑÑ‹ (отфильтрованные по темам) и ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ðµ "
"упоминают Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ, а также комментарии."
-#: conf/email.py:47
+#: conf/email.py:62
+#, fuzzy
+msgid "Send periodic reminders about unanswered questions"
+msgstr "Ðеотвеченных вопроÑов нет"
+
+#: conf/email.py:64
+msgid ""
+"NOTE: in order to use this feature, it is necessary to run the management "
+"command \"send_unanswered_question_reminders\" (for example, via a cron job "
+"- with an appropriate frequency) and an IMAP server with a dedicated inbox "
+"must be configured "
+msgstr ""
+
+#: conf/email.py:78
+#, fuzzy
+msgid "Days before starting to send reminders about unanswered questions"
+msgstr "Ðеотвеченных вопроÑов нет"
+
+#: conf/email.py:89
+msgid ""
+"How often to send unanswered question reminders (in days between the "
+"reminders sent)."
+msgstr ""
+
+#: conf/email.py:101
+#, fuzzy
+msgid "Max. number of reminders to send about unanswered questions"
+msgstr "нажмите, чтобы увидеть поÑледние вопроÑÑ‹"
+
+#: conf/email.py:113
msgid "Require email verification before allowing to post"
msgstr ""
"Требовать Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ð°Ð´Ñ€ÐµÑа Ñлектронной почты перед публикацией Ñообщений"
-#: conf/email.py:48
+#: conf/email.py:114
msgid ""
"Active email verification is done by sending a verification key in email"
msgstr ""
"Подтверждение адреÑа Ñлектронной почты оÑущеÑтвлÑетÑÑ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²ÐºÐ¾Ð¹ ключа "
"проверки на email"
-#: conf/email.py:57
+#: conf/email.py:123
msgid "Allow only one account per email address"
msgstr "Позволить только один аккаунт на каждый Ñлектронный почтовый адреÑ"
-#: conf/email.py:66
+#: conf/email.py:132
msgid "Fake email for anonymous user"
msgstr "Поддельный Ð°Ð´Ñ€ÐµÑ Ñлектронной почты Ð´Ð»Ñ Ð°Ð½Ð¾Ð½Ð¸Ð¼Ð½Ð¾Ð³Ð¾ пользователÑ"
-#: conf/email.py:67
+#: conf/email.py:133
msgid "Use this setting to control gravatar for email-less user"
msgstr ""
"ИÑпользуйте Ñту уÑтановку Ð´Ð»Ñ Ð°Ð²Ð°Ñ‚Ð°Ñ€Ð° пользователей которые не ввели Ð°Ð´Ñ€ÐµÑ "
"Ñлектронной почты."
-#: conf/email.py:76
-msgid "Prefix for the email subject line"
-msgstr "ÐŸÑ€ÐµÑ„Ð¸ÐºÑ Ð´Ð»Ñ Ñлектронной почты в Ñтроке темы"
+#: conf/email.py:142
+#, fuzzy
+msgid "Allow posting questions by email"
+msgstr ""
+"<span class=\"strong big\">ПожалуйÑта, начните задавать Ваш Ð²Ð¾Ñ€Ð¿Ð¾Ñ Ð°Ð½Ð¾Ð½Ð¸Ð¼Ð½Ð¾</"
+"span>. Когда Ð’Ñ‹ пошлете вопроÑ, Ð’Ñ‹ будете направлены на Ñтраницу "
+"авторизации. Ваш Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð±ÑƒÐ´ÐµÑ‚ Ñохранён в текущей ÑеÑÑии и будет опубликован "
+"как только Ð’Ñ‹ авторизуетеÑÑŒ. Войти или запиÑатьÑÑ Ð½Ð° наш форум очень легко. "
+"ÐÐ²Ñ‚Ð¾Ñ€Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð·Ð°Ð¹Ð¼ÐµÑ‚ не более полминуты а Ð¸Ð·Ð½Ð°Ñ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ - приблизительно "
+"одну минуту."
+
+#: conf/email.py:144
+msgid ""
+"Before enabling this setting - please fill out IMAP settings in the settings."
+"py file"
+msgstr ""
+
+#: conf/email.py:155
+msgid "Replace space in emailed tags with dash"
+msgstr ""
+
+#: conf/email.py:157
+msgid ""
+"This setting applies to tags written in the subject line of questions asked "
+"by email"
+msgstr ""
#: conf/external_keys.py:11
msgid "Keys to connect the site with external services like Facebook, etc."
@@ -668,60 +773,155 @@ msgstr ""
"Сохраните, затем <a href=\"http://validator.w3.org/\">иÑпользуйте HTML "
"валидатор</a> на Ñтранице \"о наÑ\" Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ¸ правильноÑти."
-#: conf/forum_data_rules.py:12
+#: conf/forum_data_rules.py:11
msgid "Settings for askbot data entry and display"
msgstr "Ввод и отображение данных"
#: conf/forum_data_rules.py:20
+#, python-format
+msgid ""
+"Enable embedding videos. <em>Note: please read <a href=\"%(url)s>read this</"
+"a> first.</em>"
+msgstr ""
+
+#: conf/forum_data_rules.py:31
msgid "Check to enable community wiki feature"
msgstr ""
"Отметьте, еÑли Ð’Ñ‹ хотите иÑпользовать функцию \"общее вики\" Ð´Ð»Ñ Ñообщений "
"на форуме"
-#: conf/forum_data_rules.py:29
+#: conf/forum_data_rules.py:40
+msgid "Allow asking questions anonymously"
+msgstr ""
+
+#: conf/forum_data_rules.py:42
+msgid ""
+"Users do not accrue reputation for anonymous questions and their identity is "
+"not revealed until they change their mind"
+msgstr ""
+
+#: conf/forum_data_rules.py:54
msgid "Maximum length of tag (number of characters)"
msgstr "МакÑимальное количеÑтво букв в теге (ключевом Ñлове)"
-#: conf/forum_data_rules.py:39
+#: conf/forum_data_rules.py:63
+msgid "Force lowercase the tags"
+msgstr ""
+
+#: conf/forum_data_rules.py:65
+msgid ""
+"Attention: after checking this, please back up the database, and run a "
+"management command: <code>python manage.py fix_question_tags</code> to "
+"globally rename the tags"
+msgstr ""
+
+#: conf/forum_data_rules.py:78
+#, fuzzy
+msgid "Use wildcard tags"
+msgstr "Ñмотреть вÑе темы"
+
+#: conf/forum_data_rules.py:80
+msgid ""
+"Wildcard tags can be used to follow or ignore many tags at once, a valid "
+"wildcard tag has a single wildcard at the very end"
+msgstr ""
+
+#: conf/forum_data_rules.py:93
msgid "Default max number of comments to display under posts"
msgstr "ЧиÑло комментариев по-умолчанию, которое показываетÑÑ Ð¿Ð¾Ð´ ÑообщениÑми"
-#: conf/forum_data_rules.py:50
+#: conf/forum_data_rules.py:104
#, python-format
msgid "Maximum comment length, must be < %(max_len)s"
msgstr ""
"МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° ÐºÐ¾Ð¼Ð¼ÐµÐ½Ñ‚Ð°Ñ€Ð¸Ñ Ð½Ðµ должна превышать %(max_len)s Ñимволов"
-#: conf/forum_data_rules.py:60
+#: conf/forum_data_rules.py:114
+msgid "Limit time to edit comments"
+msgstr ""
+
+#: conf/forum_data_rules.py:116
+msgid "If unchecked, there will be no time limit to edit the comments"
+msgstr ""
+
+#: conf/forum_data_rules.py:127
+msgid "Minutes allowed to edit a comment"
+msgstr ""
+
+#: conf/forum_data_rules.py:128
+msgid "To enable this setting, check the previous one"
+msgstr ""
+
+#: conf/forum_data_rules.py:137
+msgid "Save comment by pressing <Enter> key"
+msgstr ""
+
+#: conf/forum_data_rules.py:146
msgid "Minimum length of search term for Ajax search"
msgstr "ÐœÐ¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° поиÑкового запроÑа в AJAX поиÑке"
-#: conf/forum_data_rules.py:61
+#: conf/forum_data_rules.py:147
msgid "Must match the corresponding database backend setting"
msgstr ""
"Значение должно равнÑÑ‚ÑŒÑÑ ÑоответÑтвующей уÑтановке в Вашей базе данных"
-#: conf/forum_data_rules.py:70
+#: conf/forum_data_rules.py:156
+msgid "Do not make text query sticky in search"
+msgstr ""
+
+#: conf/forum_data_rules.py:158
+msgid ""
+"Check to disable the \"sticky\" behavior of the search query. This may be "
+"useful if you want to move the search bar away from the default position or "
+"do not like the default sticky behavior of the text search query."
+msgstr ""
+
+#: conf/forum_data_rules.py:171
msgid "Maximum number of tags per question"
msgstr "Ðаибольшее разрешенное количеÑтво ключевых Ñлов (тегов) на вопроÑ"
-#: conf/forum_data_rules.py:82
+#: conf/forum_data_rules.py:183
msgid "Number of questions to list by default"
msgstr "КоличеÑтво вопроÑов отображаемых на главной Ñтранице"
-#: conf/forum_data_rules.py:92
+#: conf/forum_data_rules.py:193
msgid "What should \"unanswered question\" mean?"
msgstr "Что должен означать \"неотвеченный вопроÑ\"?"
+#: conf/login_providers.py:11
+msgid "Login provider setings"
+msgstr ""
+
+#: conf/login_providers.py:19
+msgid ""
+"Show alternative login provider buttons on the password \"Sign Up\" page"
+msgstr ""
+
+#: conf/login_providers.py:28
+msgid "Always display local login form and hide \"Askbot\" button."
+msgstr ""
+
+#: conf/login_providers.py:56
+#, fuzzy, python-format
+msgid "Activate %(provider)s login"
+msgstr "Вход при помощи %(provider)s работает отлично"
+
+#: conf/login_providers.py:61
+#, python-format
+msgid ""
+"Note: to really enable %(provider)s login some additional parameters will "
+"need to be set in the \"External keys\" section"
+msgstr ""
+
#: conf/markup.py:15
msgid "Markup formatting"
msgstr "Разметка текÑта"
-#: conf/markup.py:29
+#: conf/markup.py:22
msgid "Enable code-friendly Markdown"
msgstr "Ðктивировать Markdown, оптимизированный Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð¸Ñтов"
-#: conf/markup.py:31
+#: conf/markup.py:24
msgid ""
"If checked, underscore characters will not trigger italic or bold formatting "
"- bold and italic text can still be marked up with asterisks. Note that "
@@ -734,24 +934,24 @@ msgstr ""
"включена при иÑпользовании MathJax, Ñ‚.к. в формате LaTeX Ñтот Ñимвол широко "
"иÑпользуетÑÑ."
-#: conf/markup.py:46
+#: conf/markup.py:39
msgid "Mathjax support (rendering of LaTeX)"
msgstr "Поддержка MathJax (LaTeX) Ð´Ð»Ñ Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¼Ð°Ñ‚ÐµÐ¼Ð°Ñ‚Ð¸Ñ‡ÐµÑких формул"
-#: conf/markup.py:48
-#, python-format
+#: conf/markup.py:41
+#, fuzzy, python-format
msgid ""
"If you enable this feature, <a href=\"%(url)s\">mathjax</a> must be "
-"installed in directory %(dir)s"
+"installed on your server in its own directory."
msgstr ""
"ЕÑли вы включите Ñту функцию, <a href=\"%(url)s\">mathjax</a> должен быть "
"уÑтановлен в каталоге %(dir)s"
-#: conf/markup.py:63
+#: conf/markup.py:55
msgid "Base url of MathJax deployment"
msgstr "База URL-ов Ð´Ð»Ñ Ñ€Ð°Ð·Ð¼ÐµÑ‰ÐµÐ½Ð¸Ñ MathJax"
-#: conf/markup.py:65
+#: conf/markup.py:57
msgid ""
"Note - <strong>MathJax is not included with askbot</strong> - you should "
"deploy it yourself, preferably at a separate domain and enter url pointing "
@@ -825,6 +1025,16 @@ msgstr "Закрыть чужие вопроÑÑ‹"
msgid "Lock posts"
msgstr "Заблокировать поÑÑ‚Ñ‹"
+#: conf/minimum_reputation.py:155
+msgid "Remove rel=nofollow from own homepage"
+msgstr ""
+
+#: conf/minimum_reputation.py:157
+msgid ""
+"When a search engine crawler will see a rel=nofollow attribute on a link - "
+"the link will not count towards the rank of the users personal site."
+msgstr ""
+
#: conf/reputation_changes.py:12
msgid "Reputation loss and gain rules"
msgstr "Правила Ð´Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñ€ÐµÐ¿ÑƒÑ‚Ð°Ñ†Ð¸Ð¸"
@@ -1049,35 +1259,35 @@ msgstr "Цвет фона Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð½ÑÑ‚Ñ‹Ñ…"
msgid "Foreground color for accepted answer"
msgstr "Цвет шрифта Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð½ÑÑ‚Ñ‹Ñ… ответов"
-#: conf/skin_general_settings.py:15
+#: conf/skin_general_settings.py:14
msgid "Skin and User Interface settings"
msgstr "ÐаÑтройки интерфейÑа и отображениÑ"
-#: conf/skin_general_settings.py:22
+#: conf/skin_general_settings.py:21
msgid "Q&A site logo"
msgstr "Главный логотип"
-#: conf/skin_general_settings.py:24
+#: conf/skin_general_settings.py:23
msgid "To change the logo, select new file, then submit this whole form."
msgstr ""
"Чтобы заменить логотип, выберите новый файл затем нажмите кнопку \"Ñохранить"
"\""
-#: conf/skin_general_settings.py:38
+#: conf/skin_general_settings.py:37
msgid "Show logo"
msgstr "Показывать логотип"
-#: conf/skin_general_settings.py:40
+#: conf/skin_general_settings.py:39
msgid ""
"Check if you want to show logo in the forum header or uncheck in the case "
"you do not want the logo to appear in the default location"
msgstr "Отметьте еÑли Ð’Ñ‹ хотите иÑпользовать логотип в головной чаÑти форум"
-#: conf/skin_general_settings.py:52
+#: conf/skin_general_settings.py:51
msgid "Site favicon"
msgstr "Фавикон Ð´Ð»Ñ Ð’Ð°ÑˆÐµÐ³Ð¾ Ñайта"
-#: conf/skin_general_settings.py:54
+#: conf/skin_general_settings.py:53
#, python-format
msgid ""
"A small 16x16 or 32x32 pixel icon image used to distinguish your site in the "
@@ -1100,20 +1310,11 @@ msgstr ""
"Картинка размером 88x38, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð¸ÑпользуетÑÑ Ð² качеÑтве кнопки Ð´Ð»Ñ "
"авторизации Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ и паролем."
-#: conf/skin_general_settings.py:86
-msgid "Show footer"
-msgstr "Показывать подвал Ñтраницы."
-
-#: conf/skin_general_settings.py:88
-msgid "Check if you want to show the footer on each forum page"
-msgstr ""
-"Отметьте, еÑли вы хотите, чтобы подвал отображалÑÑ Ð½Ð° каждой Ñтранице форума"
-
-#: conf/skin_general_settings.py:99
+#: conf/skin_general_settings.py:87
msgid "Show all UI functions to all users"
msgstr "Отображать вÑе функции пользовательÑкого интерфейÑа вÑем пользователÑм"
-#: conf/skin_general_settings.py:101
+#: conf/skin_general_settings.py:89
msgid ""
"If checked, all forum functions will be shown to users, regardless of their "
"reputation. However to use those functions, moderation rules, reputation and "
@@ -1124,15 +1325,15 @@ msgstr ""
"фактичеÑкий доÑтуп вÑÑ‘ равно будет завиÑить от репутации, правил "
"Ð¼Ð¾Ð´ÐµÑ€Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¸ Ñ‚.п."
-#: conf/skin_general_settings.py:116
+#: conf/skin_general_settings.py:104
msgid "Select skin"
msgstr "Выберите тему пользовательÑкого интерфейÑа"
-#: conf/skin_general_settings.py:125
+#: conf/skin_general_settings.py:113
msgid "Skin media revision number"
msgstr "Ð ÐµÐ²Ð¸Ð·Ð¸Ñ Ð¼ÐµÐ´Ð¸Ð°-файлов Ñкина"
-#: conf/skin_general_settings.py:127
+#: conf/skin_general_settings.py:115
msgid ""
"Increment this number when you change image in skin media or stylesheet. "
"This helps avoid showing your users outdated images from their browser cache."
@@ -1140,6 +1341,95 @@ msgstr ""
"Увеличьте Ñто чиÑло когда изменÑете медиа-файлы или css. Это позволÑет "
"избежать ошибки Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ ÐºÐµÑˆÐ¸Ñ€Ð¾Ð²Ð°Ð½Ð½Ñ‹Ñ… Ñтарых данных у пользователей."
+#: conf/skin_general_settings.py:128
+msgid "Customize HTML <HEAD>"
+msgstr ""
+
+#: conf/skin_general_settings.py:137
+msgid "Custom portion of the HTML <HEAD>"
+msgstr ""
+
+#: conf/skin_general_settings.py:139
+msgid ""
+"<strong>To use this option</strong>, check \"Customize HTML &lt;HEAD&gt;\" "
+"above. Contents of this box will be inserted into the &lt;HEAD&gt; portion "
+"of the HTML output, where elements such as &lt;script&gt;, &lt;link&gt;, &lt;"
+"meta&gt; may be added. Please, keep in mind that adding external javascript "
+"to the &lt;HEAD&gt; is not recommended because it slows loading of the "
+"pages. Instead, it will be more efficient to place links to the javascript "
+"files into the footer. <strong>Note:</strong> if you do use this setting, "
+"please test the site with the W3C HTML validator service."
+msgstr ""
+
+#: conf/skin_general_settings.py:159
+msgid "Site footer mode"
+msgstr ""
+
+#: conf/skin_general_settings.py:161
+msgid ""
+"Footer is the bottom portion of the content, which is common to all pages. "
+"You can disable, customize, or use the default footer."
+msgstr ""
+
+#: conf/skin_general_settings.py:178
+msgid "Custom footer (HTML format)"
+msgstr ""
+
+#: conf/skin_general_settings.py:180
+msgid ""
+"<strong>To enable this function</strong>, please select option 'customize' "
+"in the \"Site footer mode\" above. Use this area to enter contents of the "
+"footer in the HTML format. When customizing the site footer (as well as the "
+"HTML &lt;HEAD&gt;), use the HTML validation service to make sure that your "
+"input is valid and works well in all browsers."
+msgstr ""
+
+#: conf/skin_general_settings.py:195
+msgid "Apply custom style sheet (CSS)"
+msgstr ""
+
+#: conf/skin_general_settings.py:197
+msgid ""
+"Check if you want to change appearance of your form by adding custom style "
+"sheet rules (please see the next item)"
+msgstr ""
+
+#: conf/skin_general_settings.py:209
+msgid "Custom style sheet (CSS)"
+msgstr ""
+
+#: conf/skin_general_settings.py:211
+msgid ""
+"<strong>To use this function</strong>, check \"Apply custom style sheet\" "
+"option above. The CSS rules added in this window will be applied after the "
+"default style sheet rules. The custom style sheet will be served dynamically "
+"at url \"&lt;forum url&gt;/custom.css\", where the \"&lt;forum url&gt; part "
+"depends (default is empty string) on the url configuration in your urls.py."
+msgstr ""
+
+#: conf/skin_general_settings.py:227
+msgid "Add custom javascript"
+msgstr ""
+
+#: conf/skin_general_settings.py:230
+msgid "Check to enable javascript that you can enter in the next field"
+msgstr ""
+
+#: conf/skin_general_settings.py:240
+msgid "Custom javascript"
+msgstr ""
+
+#: conf/skin_general_settings.py:242
+msgid ""
+"Type or paste plain javascript that you would like to run on your site. Link "
+"to the script will be inserted at the bottom of the HTML output and will be "
+"served at the url \"&lt;forum url&gt;/custom.js\". Please, bear in mind that "
+"your javascript code may break other functionalities of the site and that "
+"the behavior may not be consistent across different browsers (<strong>to "
+"enable your custom code</strong>, check \"Add custom javascript\" option "
+"above)."
+msgstr ""
+
#: conf/social_sharing.py:10
msgid "Sharing content on social networks"
msgstr "РаÑпроÑтранение информации по Ñоциальным ÑетÑм"
@@ -1156,10 +1446,20 @@ msgstr "ÐаÑтройка политики пользователей"
msgid "Allow editing user screen name"
msgstr "Позволить пользователÑм изменÑÑ‚ÑŒ имена"
-#: conf/user_settings.py:28
+#: conf/user_settings.py:27
+#, fuzzy
+msgid "Allow account recovery by email"
+msgstr "Email Ð´Ð»Ñ Ð²Ð¾ÑÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð°ÐºÐºÐ°ÑƒÐ½Ñ‚Ð° выÑлан"
+
+#: conf/user_settings.py:37
msgid "Minimum allowed length for screen name"
msgstr "Минимальное количеÑтво букв в именах пользователей"
+#: conf/user_settings.py:46
+#, fuzzy
+msgid "Name for the Anonymous user"
+msgstr "Поддельный Ð°Ð´Ñ€ÐµÑ Ñлектронной почты Ð´Ð»Ñ Ð°Ð½Ð¾Ð½Ð¸Ð¼Ð½Ð¾Ð³Ð¾ пользователÑ"
+
#: conf/vote_rules.py:13
msgid "Limits applicable to votes and moderation flags"
msgstr "ÐаÑтройки, применÑемые Ð´Ð»Ñ Ð³Ð¾Ð»Ð¾ÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¸ отметок модерации"
@@ -1225,21 +1525,21 @@ msgstr "Ñпам или реклама"
msgid "too localized"
msgstr "Ñлишком Ñпециализированный"
-#: const/__init__.py:40 const/message_keys.py:28
+#: const/__init__.py:40
msgid "newest"
msgstr "новые"
-#: const/__init__.py:41 const/message_keys.py:26
-#: skins/default/templates/users.html:25 skins/default/templates/users.html:26
+#: const/__init__.py:41 skins/default/templates/users.html:25
+#: skins/default/templates/users.html:26
#, fuzzy
msgid "oldest"
msgstr "Ñтарые"
-#: const/__init__.py:42 const/message_keys.py:32
+#: const/__init__.py:42
msgid "active"
msgstr "активные"
-#: const/__init__.py:43 const/message_keys.py:30
+#: const/__init__.py:43
msgid "inactive"
msgstr "неактивные"
@@ -1261,20 +1561,20 @@ msgstr "больше голоÑов"
msgid "least voted"
msgstr "меньше голоÑов"
-#: const/__init__.py:48 const/message_keys.py:24
+#: const/__init__.py:48 skins/default/templates/main_page/tab_bar.html:29
msgid "relevance"
msgstr "умеÑтноÑÑ‚ÑŒ"
-#: const/__init__.py:55 skins/default/templates/questions.html:14
-#: skins/default/templates/user_inbox.html:47
+#: const/__init__.py:55 skins/default/templates/main_page/tab_bar.html:10
+#: skins/default/templates/user_profile/user_inbox.html:50
msgid "all"
msgstr "вÑе"
-#: const/__init__.py:56 skins/default/templates/questions.html:19
+#: const/__init__.py:56 skins/default/templates/main_page/tab_bar.html:15
msgid "unanswered"
msgstr "неотвеченные"
-#: const/__init__.py:57 skins/default/templates/questions.html:25
+#: const/__init__.py:57 skins/default/templates/main_page/tab_bar.html:21
msgid "favorite"
msgstr "закладки"
@@ -1286,149 +1586,160 @@ msgstr "Ðет ни одного ответа"
msgid "Question has no accepted answers"
msgstr "Ðет принÑтого ответа"
-#: const/__init__.py:112
+#: const/__init__.py:114
msgid "asked a question"
msgstr "задан вопроÑ"
-#: const/__init__.py:113
+#: const/__init__.py:115
msgid "answered a question"
msgstr "дан ответ"
-#: const/__init__.py:114
+#: const/__init__.py:116
msgid "commented question"
msgstr "прокомментированный вопроÑ"
-#: const/__init__.py:115
+#: const/__init__.py:117
msgid "commented answer"
msgstr "прокомментированный ответ"
-#: const/__init__.py:116
+#: const/__init__.py:118
msgid "edited question"
msgstr "отредактированный вопроÑ"
-#: const/__init__.py:117
+#: const/__init__.py:119
msgid "edited answer"
msgstr "отредактированный ответ"
-#: const/__init__.py:118
+#: const/__init__.py:120
msgid "received award"
msgstr "получена награда"
-#: const/__init__.py:119
+#: const/__init__.py:121
msgid "marked best answer"
msgstr "отмечен как лучший ответ"
-#: const/__init__.py:120
+#: const/__init__.py:122
msgid "upvoted"
msgstr "проголоÑовали \"за\""
-#: const/__init__.py:121
+#: const/__init__.py:123
msgid "downvoted"
msgstr "проголоÑовали \"против\""
-#: const/__init__.py:122
+#: const/__init__.py:124
msgid "canceled vote"
msgstr "отмененный голоÑ"
-#: const/__init__.py:123
+#: const/__init__.py:125
msgid "deleted question"
msgstr "удаленный вопроÑ"
-#: const/__init__.py:124
+#: const/__init__.py:126
msgid "deleted answer"
msgstr "удаленный ответ"
-#: const/__init__.py:125
+#: const/__init__.py:127
msgid "marked offensive"
msgstr "отметка неумеÑтного ÑодержаниÑ"
-#: const/__init__.py:126
+#: const/__init__.py:128
msgid "updated tags"
msgstr "обновленные Ñ‚Ñги "
-#: const/__init__.py:127
+#: const/__init__.py:129
#, fuzzy
msgid "selected favorite"
msgstr "занеÑено в избранное "
-#: const/__init__.py:128
+#: const/__init__.py:130
#, fuzzy
msgid "completed user profile"
msgstr "завершенный профиль пользователÑ"
-#: const/__init__.py:129
+#: const/__init__.py:131
msgid "email update sent to user"
msgstr "Ñообщение выÑлано по Ñлектронной почте"
-#: const/__init__.py:130
+#: const/__init__.py:134
+#, fuzzy
+msgid "reminder about unanswered questions sent"
+msgstr "проÑмотреть неотвеченные ворпоÑÑ‹"
+
+#: const/__init__.py:136
msgid "mentioned in the post"
msgstr "упомÑнуто в текÑте ÑообщениÑ"
-#: const/__init__.py:181
+#: const/__init__.py:187
msgid "question_answered"
msgstr "question_answered"
-#: const/__init__.py:182
+#: const/__init__.py:188
msgid "question_commented"
msgstr "question_commented"
-#: const/__init__.py:183
+#: const/__init__.py:189
msgid "answer_commented"
msgstr "answer_commented"
-#: const/__init__.py:184
+#: const/__init__.py:190
msgid "answer_accepted"
msgstr "answer_accepted"
-#: const/__init__.py:188
+#: const/__init__.py:194
msgid "[closed]"
msgstr "[закрыт]"
-#: const/__init__.py:189
+#: const/__init__.py:195
msgid "[deleted]"
msgstr "[удален]"
-#: const/__init__.py:190 views/readers.py:602
+#: const/__init__.py:196 views/readers.py:563
msgid "initial version"
msgstr "Ð¸Ð·Ð½Ð°Ñ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ð²ÐµÑ€ÑиÑ"
-#: const/__init__.py:191
+#: const/__init__.py:197
msgid "retagged"
msgstr "теги изменены"
-#: const/__init__.py:196
-msgid "exclude ignored tags"
+#: const/__init__.py:205
+msgid "off"
+msgstr ""
+
+#: const/__init__.py:206
+#, fuzzy
+msgid "exclude ignored"
msgstr "иÑключить игнорируемые Ñ‚Ñги"
-#: const/__init__.py:197
-msgid "allow only selected tags"
-msgstr "включить только выбранные Ñ‚Ñги"
+#: const/__init__.py:207
+#, fuzzy
+msgid "only selected"
+msgstr "Выбранные индивидуально"
-#: const/__init__.py:201
+#: const/__init__.py:211
msgid "instantly"
msgstr "немедленно "
-#: const/__init__.py:202
+#: const/__init__.py:212
msgid "daily"
msgstr "ежедневно"
-#: const/__init__.py:203
+#: const/__init__.py:213
msgid "weekly"
msgstr "еженедельно"
-#: const/__init__.py:204
+#: const/__init__.py:214
msgid "no email"
msgstr "не поÑылать email"
-#: const/__init__.py:241 skins/default/templates/badges.html:43
+#: const/__init__.py:252 skins/default/templates/badges.html:37
msgid "gold"
msgstr "золотаÑ"
-#: const/__init__.py:242 skins/default/templates/badges.html:52
+#: const/__init__.py:253 skins/default/templates/badges.html:46
msgid "silver"
msgstr "ÑеребрÑнаÑ"
-#: const/__init__.py:243 skins/default/templates/badges.html:59
+#: const/__init__.py:254 skins/default/templates/badges.html:53
msgid "bronze"
msgstr "Ð±Ñ€Ð¾Ð½Ð·Ð¾Ð²Ð°Ñ "
@@ -1439,257 +1750,262 @@ msgstr ""
"Впервые здеÑÑŒ? ПоÑмотрите наши <a href=\"%s\">чаÑто задаваемые вопроÑÑ‹(FAQ)</"
"a>!"
-#: const/message_keys.py:22
+#: const/message_keys.py:22 skins/default/templates/main_page/tab_bar.html:27
#, fuzzy
msgid "most relevant questions"
msgstr "ваш Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð´Ð¾Ð»Ð¶ÐµÐ½ ÑоответÑтвовать тематике ÑообщеÑтва"
-#: const/message_keys.py:23
+#: const/message_keys.py:23 skins/default/templates/main_page/tab_bar.html:28
#, fuzzy
msgid "click to see most relevant questions"
msgstr "нажмите, чтобы проÑмотреть вопроÑÑ‹ Ñ Ð±Ð¾Ð»ÑŒÑˆÐ¸Ð¼ чиÑлом голоÑов"
+#: const/message_keys.py:24
+#, fuzzy
+msgid "by relevance"
+msgstr "умеÑтноÑÑ‚ÑŒ"
+
#: const/message_keys.py:25
msgid "click to see the oldest questions"
msgstr "нажмите, чтобы увидеть Ñтарые вопроÑÑ‹"
+#: const/message_keys.py:26
+#, fuzzy
+msgid "by date"
+msgstr "по имени"
+
#: const/message_keys.py:27
msgid "click to see the newest questions"
msgstr "нажмите, чтобы увидеть поÑледние вопроÑÑ‹"
-#: const/message_keys.py:29
+#: const/message_keys.py:28
msgid "click to see the least recently updated questions"
msgstr "нажмите, чтобы поÑмотреть поÑледние обновленные вопроÑÑ‹"
-#: const/message_keys.py:31
+#: const/message_keys.py:29
+#, fuzzy
+msgid "by activity"
+msgstr "активноÑÑ‚ÑŒ"
+
+#: const/message_keys.py:30
msgid "click to see the most recently updated questions"
msgstr "нажмите, чтобы поÑмотреть недавно обновленные вопроÑÑ‹"
-#: const/message_keys.py:33
+#: const/message_keys.py:31
#, fuzzy
msgid "click to see the least answered questions"
msgstr "нажмите, чтобы увидеть Ñтарые вопроÑÑ‹"
-#: const/message_keys.py:34
-msgid "less answers"
-msgstr "меньше ответов"
+#: const/message_keys.py:32
+#, fuzzy
+msgid "by answers"
+msgstr "ответы"
-#: const/message_keys.py:35
+#: const/message_keys.py:33
#, fuzzy
msgid "click to see the most answered questions"
msgstr "нажмите, чтобы увидеть поÑледние вопроÑÑ‹"
-#: const/message_keys.py:36
-msgid "more answers"
-msgstr "кол-ву ответов"
-
-#: const/message_keys.py:37
+#: const/message_keys.py:34
msgid "click to see least voted questions"
msgstr "нажмите, чтобы проÑмотреть поÑледние отмеченные голоÑами вопроÑÑ‹"
-#: const/message_keys.py:38
-msgid "unpopular"
-msgstr "непопулÑрный"
+#: const/message_keys.py:35
+#, fuzzy
+msgid "by votes"
+msgstr "голоÑов"
-#: const/message_keys.py:39
+#: const/message_keys.py:36
msgid "click to see most voted questions"
msgstr "нажмите, чтобы проÑмотреть вопроÑÑ‹ Ñ Ð±Ð¾Ð»ÑŒÑˆÐ¸Ð¼ чиÑлом голоÑов"
-#: const/message_keys.py:40
-msgid "popular"
-msgstr "популÑрные"
-
-#: deps/django_authopenid/forms.py:116 deps/django_authopenid/views.py:137
+#: deps/django_authopenid/forms.py:110 deps/django_authopenid/views.py:135
msgid "i-names are not supported"
msgstr "i-names не поддерживаютÑÑ"
-#: deps/django_authopenid/forms.py:237
+#: deps/django_authopenid/forms.py:231
#, python-format
msgid "Please enter your %(username_token)s"
msgstr "ПожалуйÑта, введите Ваш %(username_token)s"
-#: deps/django_authopenid/forms.py:263
+#: deps/django_authopenid/forms.py:257
msgid "Please, enter your user name"
msgstr "ПожалуйÑта, введите Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ"
-#: deps/django_authopenid/forms.py:267
+#: deps/django_authopenid/forms.py:261
msgid "Please, enter your password"
msgstr "ПожалуйÑта, введите пароль"
-#: deps/django_authopenid/forms.py:274 deps/django_authopenid/forms.py:278
+#: deps/django_authopenid/forms.py:268 deps/django_authopenid/forms.py:272
msgid "Please, enter your new password"
msgstr "ПожалуйÑта, введите новый пароль"
-#: deps/django_authopenid/forms.py:289
+#: deps/django_authopenid/forms.py:283
msgid "Passwords did not match"
msgstr "Пароли не подходÑÑ‚"
-#: deps/django_authopenid/forms.py:301
+#: deps/django_authopenid/forms.py:295
#, python-format
msgid "Please choose password > %(len)s characters"
msgstr "ПожалуйÑта, выберите пароль > %(len)s Ñимволов"
-#: deps/django_authopenid/forms.py:336
+#: deps/django_authopenid/forms.py:330
msgid "Current password"
msgstr "Текущий пароль"
-#: deps/django_authopenid/forms.py:347
+#: deps/django_authopenid/forms.py:341
msgid ""
"Old password is incorrect. Please enter the correct "
"password."
msgstr "Старый пароль неверен. ПожалуйÑта, введите правильный пароль."
-#: deps/django_authopenid/forms.py:400
+#: deps/django_authopenid/forms.py:394
msgid "Sorry, we don't have this email address in the database"
msgstr "Извините, но Ñтого адреÑа нет в нашей базе данных."
-#: deps/django_authopenid/forms.py:435
+#: deps/django_authopenid/forms.py:430
msgid "Your user name (<i>required</i>)"
msgstr "Ваше Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ <i>(обÑзательно)</i>"
-#: deps/django_authopenid/forms.py:450
+#: deps/django_authopenid/forms.py:445
msgid "Incorrect username."
msgstr "Ðеправильное Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ."
-#: deps/django_authopenid/urls.py:10 deps/django_authopenid/urls.py:11
-#: deps/django_authopenid/urls.py:12 deps/django_authopenid/urls.py:15
-#: deps/django_authopenid/urls.py:18 setup_templates/settings.py:182
+#: deps/django_authopenid/urls.py:9 deps/django_authopenid/urls.py:10
+#: deps/django_authopenid/urls.py:11 deps/django_authopenid/urls.py:14
+#: deps/django_authopenid/urls.py:17 setup_templates/settings.py:202
msgid "signin/"
msgstr "vhod/"
-#: deps/django_authopenid/urls.py:11
+#: deps/django_authopenid/urls.py:10
msgid "newquestion/"
msgstr "noviy-vopros/"
-#: deps/django_authopenid/urls.py:12
+#: deps/django_authopenid/urls.py:11
msgid "newanswer/"
msgstr "noviy-otvet/"
-#: deps/django_authopenid/urls.py:13
+#: deps/django_authopenid/urls.py:12
msgid "signout/"
msgstr "vyhod/"
-#: deps/django_authopenid/urls.py:15
+#: deps/django_authopenid/urls.py:14
msgid "complete/"
msgstr "zavershaem/"
-#: deps/django_authopenid/urls.py:18
+#: deps/django_authopenid/urls.py:17
msgid "complete-oauth/"
msgstr "zavershaem-oauth/"
-#: deps/django_authopenid/urls.py:22
+#: deps/django_authopenid/urls.py:21
msgid "register/"
msgstr "registraciya/"
-#: deps/django_authopenid/urls.py:24
+#: deps/django_authopenid/urls.py:23
msgid "signup/"
msgstr "noviy-account/"
-#: deps/django_authopenid/urls.py:32
+#: deps/django_authopenid/urls.py:31
msgid "recover/"
msgstr "vosstanovleniye-accounta/"
-#: deps/django_authopenid/util.py:196
+#: deps/django_authopenid/util.py:233
#, python-format
msgid "%(site)s user name and password"
msgstr "Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸ пароль на %(site)s"
-#: deps/django_authopenid/util.py:202
-#: skins/default/templates/authopenid/signin.html:124
+#: deps/django_authopenid/util.py:239
+#: skins/default/templates/authopenid/signin.html:105
msgid "Create a password-protected account"
msgstr "Создайте новый аккаунт Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ и паролем"
-#: deps/django_authopenid/util.py:203
+#: deps/django_authopenid/util.py:240
msgid "Change your password"
msgstr "Сменить пароль"
-#: deps/django_authopenid/util.py:265
+#: deps/django_authopenid/util.py:302
msgid "Sign in with Yahoo"
msgstr "Вход через Yahoo"
-#: deps/django_authopenid/util.py:272
+#: deps/django_authopenid/util.py:309
msgid "AOL screen name"
msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð² AOL"
-#: deps/django_authopenid/util.py:280
+#: deps/django_authopenid/util.py:317
msgid "OpenID url"
msgstr "ÐÐ´Ñ€ÐµÑ Ð’Ð°ÑˆÐµÐ³Ð¾ OpenID"
-#: deps/django_authopenid/util.py:297
-msgid "MyOpenid user name"
-msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð² MyOpenid"
-
-#: deps/django_authopenid/util.py:305 deps/django_authopenid/util.py:313
+#: deps/django_authopenid/util.py:344
msgid "Flickr user name"
msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ð° Flickr"
-#: deps/django_authopenid/util.py:321
+#: deps/django_authopenid/util.py:352
msgid "Technorati user name"
msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð² Technorati"
-#: deps/django_authopenid/util.py:329
+#: deps/django_authopenid/util.py:360
msgid "WordPress blog name"
msgstr "Ð˜Ð¼Ñ Ð±Ð»Ð¾Ð³Ð° на WordPress"
-#: deps/django_authopenid/util.py:337
+#: deps/django_authopenid/util.py:368
msgid "Blogger blog name"
msgstr "Ð˜Ð¼Ñ Ð±Ð»Ð¾Ð³Ð° на Blogger"
-#: deps/django_authopenid/util.py:345
+#: deps/django_authopenid/util.py:376
msgid "LiveJournal blog name"
msgstr "Ð˜Ð¼Ñ Ð±Ð»Ð¾Ð³Ð° на LiveJournal"
-#: deps/django_authopenid/util.py:353
+#: deps/django_authopenid/util.py:384
msgid "ClaimID user name"
msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð² ClaimID"
-#: deps/django_authopenid/util.py:361
+#: deps/django_authopenid/util.py:392
msgid "Vidoop user name"
msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð² Vidoop"
-#: deps/django_authopenid/util.py:369
+#: deps/django_authopenid/util.py:400
msgid "Verisign user name"
msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð² Verisign"
-#: deps/django_authopenid/util.py:393
+#: deps/django_authopenid/util.py:424
#, python-format
msgid "Change your %(provider)s password"
msgstr "Сменить пароль в %(provider)s"
-#: deps/django_authopenid/util.py:397
+#: deps/django_authopenid/util.py:428
#, python-format
msgid "Click to see if your %(provider)s signin still works for %(site_name)s"
msgstr ""
"Проверьте, работает ли по-прежнему Ваш логин от %(provider)s на %(site_name)s"
-#: deps/django_authopenid/util.py:406
+#: deps/django_authopenid/util.py:437
#, python-format
msgid "Create password for %(provider)s"
msgstr "Создать пароль Ð´Ð»Ñ %(provider)s"
-#: deps/django_authopenid/util.py:410
+#: deps/django_authopenid/util.py:441
#, python-format
msgid "Connect your %(provider)s account to %(site_name)s"
msgstr ""
"Соедините Ваш аккаунт на %(provider)s Ñ Ð’Ð°ÑˆÐµÐ¹ учетной запиÑью на %(site_name)"
"s"
-#: deps/django_authopenid/util.py:419
+#: deps/django_authopenid/util.py:450
#, python-format
msgid "Signin with %(provider)s user name and password"
msgstr "Заходите Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸ паролем %(provider)s "
-#: deps/django_authopenid/util.py:426
+#: deps/django_authopenid/util.py:457
#, python-format
msgid "Sign in with your %(provider)s account"
msgstr "Заходите через Ваш аккаунт на %(provider)s"
-#: deps/django_authopenid/views.py:144
+#: deps/django_authopenid/views.py:142
#, python-format
msgid "OpenID %(openid_url)s is invalid"
msgstr "OpenID %(openid_url)s недейÑтвителен"
-#: deps/django_authopenid/views.py:256 deps/django_authopenid/views.py:399
+#: deps/django_authopenid/views.py:254 deps/django_authopenid/views.py:399
#: deps/django_authopenid/views.py:427
#, python-format
msgid ""
@@ -1703,61 +2019,62 @@ msgstr ""
msgid "Your new password saved"
msgstr "Ваш новый пароль Ñохранен"
-#: deps/django_authopenid/views.py:511
+#: deps/django_authopenid/views.py:512
msgid "Please click any of the icons below to sign in"
msgstr "Чтобы войти на форум, нажмите на любую из кнопок ниже "
-#: deps/django_authopenid/views.py:513
+#: deps/django_authopenid/views.py:514
msgid "Account recovery email sent"
msgstr "Email Ð´Ð»Ñ Ð²Ð¾ÑÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð°ÐºÐºÐ°ÑƒÐ½Ñ‚Ð° выÑлан"
-#: deps/django_authopenid/views.py:516
+#: deps/django_authopenid/views.py:517
msgid "Please add one or more login methods."
msgstr ""
"ПожалуйÑта, добавьте Ñ…Ð¾Ñ‚Ñ Ð±Ñ‹ один поÑтоÑнный метод Ð´Ð»Ñ Ð°Ð²Ñ‚Ð¾Ñ€Ð¸Ð·Ð°Ñ†Ð¸Ð¸. Иметь "
"два или больше методов тоже можно."
-#: deps/django_authopenid/views.py:518
+#: deps/django_authopenid/views.py:519
msgid "If you wish, please add, remove or re-validate your login methods"
msgstr ""
"ЕÑли Вам угодно, пожалуйÑта добавьте, удалите или проверьте как работают "
"Ваши методы Ð´Ð»Ñ Ð°Ð²Ñ‚Ð¾Ñ€Ð¸Ð·Ð°Ñ†Ð¸Ð¸"
-#: deps/django_authopenid/views.py:520
+#: deps/django_authopenid/views.py:521
msgid "Please wait a second! Your account is recovered, but ..."
msgstr ""
"ПожалуйÑта, подождите Ñекунду! Ваша ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ воÑÑтанавлена, но ..."
-#: deps/django_authopenid/views.py:522
+#: deps/django_authopenid/views.py:523
msgid "Sorry, this account recovery key has expired or is invalid"
msgstr "К Ñожалению, Ñтот ключ воÑÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸Ñтек или не ÑвлÑетÑÑ Ð²ÐµÑ€Ð½Ñ‹Ð¼"
-#: deps/django_authopenid/views.py:578
+#: deps/django_authopenid/views.py:594
#, python-format
msgid "Login method %(provider_name)s does not exist"
msgstr "Метод входа %(provider_name) s не ÑущеÑтвует"
-#: deps/django_authopenid/views.py:584
+#: deps/django_authopenid/views.py:600
msgid "Oops, sorry - there was some error - please try again"
msgstr "УпÑ, извините, произошла ошибка - пожалуйÑта, попробуйте ещё раз"
-#: deps/django_authopenid/views.py:675
+#: deps/django_authopenid/views.py:691
#, python-format
msgid "Your %(provider)s login works fine"
msgstr "Вход при помощи %(provider)s работает отлично"
-#: deps/django_authopenid/views.py:973 deps/django_authopenid/views.py:979
+#: deps/django_authopenid/views.py:1001 deps/django_authopenid/views.py:1007
#, python-format
msgid "your email needs to be validated see %(details_url)s"
msgstr ""
"пожалуйÑта подтвердите ваш email, Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ (<a href=\"%"
"(details_url)s\">здеÑÑŒ</a>)"
-#: deps/django_authopenid/views.py:1000
-msgid "Email verification subject line"
-msgstr "Тема ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð²ÐµÑ€Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ð¸ email"
+#: deps/django_authopenid/views.py:1028
+#, fuzzy, python-format
+msgid "Recover your %(site)s account"
+msgstr "ВоÑÑтановить ваш аккаунт иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ email"
-#: deps/django_authopenid/views.py:1065
+#: deps/django_authopenid/views.py:1098
msgid "Please check your email and visit the enclosed link."
msgstr "ПожалуйÑта, проверьте Ñвой email и пройдите по вложенной ÑÑылке."
@@ -1765,24 +2082,24 @@ msgstr "ПожалуйÑта, проверьте Ñвой email и пройдиÑ
msgid "Site"
msgstr "Сайт"
-#: deps/livesettings/values.py:107
+#: deps/livesettings/values.py:106
msgid "Base Settings"
msgstr "Базовые наÑтройки"
-#: deps/livesettings/values.py:214
+#: deps/livesettings/values.py:213
msgid "Default value: \"\""
msgstr "Значение по умолчанию:\"\""
-#: deps/livesettings/values.py:221
+#: deps/livesettings/values.py:220
msgid "Default value: "
msgstr "Значение по умолчанию:"
-#: deps/livesettings/values.py:224
+#: deps/livesettings/values.py:223
#, python-format
msgid "Default value: %s"
msgstr "Значение по умолчанию: %s"
-#: deps/livesettings/values.py:589
+#: deps/livesettings/values.py:588
#, python-format
msgid "Allowed image file types are %(types)s"
msgstr "ДопуÑтимые типы файлов изображений: %(types)s"
@@ -1798,7 +2115,7 @@ msgstr "ДокументациÑ"
#: deps/livesettings/templates/livesettings/group_settings.html:11
#: deps/livesettings/templates/livesettings/site_settings.html:23
-#: skins/default/templates/authopenid/signin.html:142
+#: skins/default/templates/authopenid/signin.html:123
msgid "Change password"
msgstr "Сменить пароль"
@@ -1891,21 +2208,51 @@ msgstr "ReCAPTCHA недоÑтупен. "
msgid "Invalid request"
msgstr "Ðеправильный запроÑ"
-#: importers/stackexchange/management/commands/load_stackexchange.py:126
+#: importers/stackexchange/management/commands/load_stackexchange.py:128
msgid "Congratulations, you are now an Administrator"
msgstr "ПоздравлÑем, теперь Ð’Ñ‹ админиÑтратор на нашем форуме"
-#: management/commands/send_email_alerts.py:105
+#: management/commands/initialize_ldap_logins.py:51
+msgid ""
+"This command may help you migrate to LDAP password authentication by "
+"creating a record for LDAP association with each user account. There is an "
+"assumption that ldap user id's are the same as user names registered at the "
+"site. Before running this command it is necessary to set up LDAP parameters "
+"in the \"External keys\" section of the site settings."
+msgstr ""
+
+#: management/commands/post_emailed_questions.py:34
+msgid ""
+"<p>To ask by email, please:</p>\n"
+"<ul>\n"
+" <li>Format the subject line as: [Tag1; Tag2] Question title</li>\n"
+" <li>Type details of your question into the email body</li>\n"
+"</ul>\n"
+"<p>Note that tags may consist of more than one word, and tags\n"
+"may be separated by a semicolon or a comma</p>\n"
+msgstr ""
+
+#: management/commands/post_emailed_questions.py:54
#, python-format
-msgid "\" and \"%s\""
-msgstr "\" и \"%s\""
+msgid ""
+"<p>Sorry, there was an error posting your question please contact the %(site)"
+"s administrator</p>"
+msgstr ""
-#: management/commands/send_email_alerts.py:108
-#, fuzzy
-msgid "\" and more"
-msgstr "Узнать больше"
+#: management/commands/post_emailed_questions.py:60
+#, python-format
+msgid ""
+"<p>Sorry, in order to post questions on %(site)s by email, please <a href=\"%"
+"(url)s\">register first</a></p>"
+msgstr ""
+
+#: management/commands/post_emailed_questions.py:68
+msgid ""
+"<p>Sorry, your question could not be posted due to insufficient privileges "
+"of your user account</p>"
+msgstr ""
-#: management/commands/send_email_alerts.py:113
+#: management/commands/send_email_alerts.py:408
#, python-format
msgid "%(question_count)d updated question about %(topics)s"
msgid_plural "%(question_count)d updated questions about %(topics)s"
@@ -1913,7 +2260,7 @@ msgstr[0] "%(question_count)d Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½ в %(topics)s"
msgstr[1] "%(question_count)d вопроÑÑ‹ обновлены в %(topics)s"
msgstr[2] "%(question_count)d вопроÑÑ‹ обновлены в %(topics)s"
-#: management/commands/send_email_alerts.py:467
+#: management/commands/send_email_alerts.py:418
#, 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"
@@ -1921,11 +2268,11 @@ msgstr[0] "%(name)s, в Ñтом %(num)d вопроÑе еÑÑ‚ÑŒ новоÑти"
msgstr[1] "%(name)s, в Ñтих %(num)d вопроÑах еÑÑ‚ÑŒ новоÑти"
msgstr[2] "%(name)s, в Ñтих %(num)d вопроÑах еÑÑ‚ÑŒ новоÑти"
-#: management/commands/send_email_alerts.py:484
+#: management/commands/send_email_alerts.py:435
msgid "new question"
msgstr "новый вопроÑ"
-#: management/commands/send_email_alerts.py:501
+#: management/commands/send_email_alerts.py:452
msgid ""
"Please visit the askbot and see what's new! Could you spread the word about "
"it - can somebody you know help answering those questions or benefit from "
@@ -1935,7 +2282,7 @@ msgstr ""
"раÑÑкажете другим о нашем Ñайте или кто-нибудь из Ваших знакомых может "
"ответить на Ñти вопроÑÑ‹ или извлечь пользу из ответов?"
-#: management/commands/send_email_alerts.py:513
+#: management/commands/send_email_alerts.py:464
msgid ""
"Your most frequent subscription setting is 'daily' on selected questions. If "
"you are receiving more than one email per dayplease tell about this issue to "
@@ -1944,7 +2291,7 @@ msgstr ""
"Ваша наиболее чаÑÑ‚Ð°Ñ Ð½Ð°Ñтройка Ð¾Ð¿Ð¾Ð²ÐµÑ‰ÐµÐ½Ð¸Ñ Ð¿Ð¾ email - ежедневнаÑ. ЕÑли вы "
"получаете email чаще, пожалуйÑта, извеÑтите админиÑтратора форума."
-#: management/commands/send_email_alerts.py:519
+#: management/commands/send_email_alerts.py:470
msgid ""
"Your most frequent subscription setting is 'weekly' if you are receiving "
"this email more than once a week please report this issue to the askbot "
@@ -1953,7 +2300,7 @@ msgstr ""
"Ваша наиболее чаÑÑ‚Ð°Ñ Ð½Ð°Ñтройка Ð¾Ð¿Ð¾Ð²ÐµÑ‰ÐµÐ½Ð¸Ñ Ð¿Ð¾ email - еженедельнаÑ. ЕÑли вы "
"получаете email чаще, пожалуйÑта, извеÑтите админиÑтратора форума."
-#: management/commands/send_email_alerts.py:525
+#: management/commands/send_email_alerts.py:476
msgid ""
"There is a chance that you may be receiving links seen before - due to a "
"technicality that will eventually go away. "
@@ -1961,7 +2308,7 @@ msgstr ""
"Ðе иÑключено что Ð’Ñ‹ можете получить ÑÑылки, которые видели раньше. Это "
"иÑчезнет ÑпуÑÑ‚Ñ Ð½ÐµÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ðµ времÑ."
-#: management/commands/send_email_alerts.py:530
+#: management/commands/send_email_alerts.py:482
#, python-format
msgid ""
"go to %(email_settings_link)s to change frequency of email updates or %"
@@ -1971,7 +2318,15 @@ msgstr ""
"раÑÑылки. ЕÑли возникнет необходимоÑÑ‚ÑŒ - пожалуйÑта ÑвÑжитеÑÑŒ Ñ "
"админиÑтратором форума по %(admin_email)s."
-#: models/__init__.py:170
+#: management/commands/send_unanswered_question_reminders.py:80
+#, fuzzy, python-format
+msgid "%(question_count)d unanswered question about %(topics)s"
+msgid_plural "%(question_count)d unanswered questions about %(topics)s"
+msgstr[0] "%(question_count)d Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½ в %(topics)s"
+msgstr[1] "%(question_count)d вопроÑÑ‹ обновлены в %(topics)s"
+msgstr[2] "%(question_count)d вопроÑÑ‹ обновлены в %(topics)s"
+
+#: models/__init__.py:299
msgid ""
"Sorry, you cannot accept or unaccept best answers because your account is "
"blocked"
@@ -1979,7 +2334,7 @@ msgstr ""
"К Ñожалению, вы не можете принÑÑ‚ÑŒ или не принÑÑ‚ÑŒ лучший ответ, потому что "
"ваша ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ заблокирована"
-#: models/__init__.py:175
+#: models/__init__.py:304
msgid ""
"Sorry, you cannot accept or unaccept best answers because your account is "
"suspended"
@@ -1987,14 +2342,14 @@ msgstr ""
"К Ñожалению, вы не можете принÑÑ‚ÑŒ или не принÑÑ‚ÑŒ лучший ответ, потому что "
"ваша ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ приоÑтановлена"
-#: models/__init__.py:181
+#: models/__init__.py:310
msgid ""
"Sorry, you cannot accept or unaccept your own answer to your own question"
msgstr ""
"К Ñожалению, вы не можете принÑÑ‚ÑŒ или не принÑÑ‚ÑŒ ваш ÑобÑтвенный ответ на "
"ваш вопроÑ"
-#: models/__init__.py:188
+#: models/__init__.py:317
#, python-format
msgid ""
"Sorry, only original author of the question - %(username)s - can accept the "
@@ -2003,73 +2358,83 @@ msgstr ""
"К Ñожалению, только первый автор вопроÑа - %(username)s - может принÑÑ‚ÑŒ "
"лучший ответ"
-#: models/__init__.py:211
+#: models/__init__.py:340
msgid "cannot vote for own posts"
msgstr "Ð½ÐµÐ»ÑŒÐ·Ñ Ð³Ð¾Ð»Ð¾Ñовать за ÑобÑтвенные ÑообщениÑ"
-#: models/__init__.py:214
+#: models/__init__.py:343
msgid "Sorry your account appears to be blocked "
msgstr "К Ñожалению, ваша ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ заблокирована"
-#: models/__init__.py:219
+#: models/__init__.py:348
msgid "Sorry your account appears to be suspended "
msgstr "К Ñожалению, ваша ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ приоÑтановлена"
-#: models/__init__.py:229
+#: models/__init__.py:358
#, python-format
msgid ">%(points)s points required to upvote"
msgstr "Ð´Ð»Ñ Ð¿Ð¾Ð²Ñ‹ÑˆÐµÐ½Ð¸Ñ Ñ€ÐµÐ¹Ñ‚Ð¸Ð½Ð³Ð° требуетÑÑ Ð¼Ð¸Ð½Ð¸Ð¼ÑƒÐ¼ %(points)s баллов "
-#: models/__init__.py:235
+#: models/__init__.py:364
#, python-format
msgid ">%(points)s points required to downvote"
msgstr "Ð´Ð»Ñ Ð¿Ð¾Ð½Ð¸Ð¶ÐµÐ½Ð¸Ñ Ñ€ÐµÐ¹Ñ‚Ð¸Ð½Ð³Ð° требуетÑÑ Ð¼Ð¸Ð½Ð¸Ð¼ÑƒÐ¼ %(points)s баллов"
-#: models/__init__.py:250
+#: models/__init__.py:379
msgid "Sorry, blocked users cannot upload files"
msgstr "К Ñожалению, заблокированные пользователи не могут загружать файлы"
-#: models/__init__.py:251
+#: models/__init__.py:380
msgid "Sorry, suspended users cannot upload files"
msgstr ""
"К Ñожалению, временно блокированные пользователи не могут загружать файлы"
-#: models/__init__.py:253
+#: models/__init__.py:382
#, python-format
msgid ""
"uploading images is limited to users with >%(min_rep)s reputation points"
msgstr ""
"загрузка изображений доÑтупна только пользователÑм Ñ Ñ€ÐµÐ¿ÑƒÑ‚Ð°Ñ†Ð¸ÐµÐ¹ > %(min_rep)s"
-#: models/__init__.py:272 models/__init__.py:332 models/__init__.py:2021
+#: models/__init__.py:401 models/__init__.py:468 models/__init__.py:2374
msgid "blocked users cannot post"
msgstr "заблокированные пользователи не могут размещать ÑообщениÑ"
-#: models/__init__.py:273 models/__init__.py:2024
+#: models/__init__.py:402 models/__init__.py:2377
msgid "suspended users cannot post"
msgstr "временно заблокированные пользователи не могут размещать ÑообщениÑ"
-#: models/__init__.py:298
+#: models/__init__.py:429
+#, fuzzy, python-format
msgid ""
-"Sorry, comments (except the last one) are editable only within 10 minutes "
-"from posting"
-msgstr ""
+"Sorry, comments (except the last one) are editable only within %(minutes)s "
+"minute from posting"
+msgid_plural ""
+"Sorry, comments (except the last one) are editable only within %(minutes)s "
+"minutes from posting"
+msgstr[0] ""
+"К Ñожалению, комментарии (за иÑключением поÑледнего) можно редактировать "
+"только в течение 10 минут"
+msgstr[1] ""
+"К Ñожалению, комментарии (за иÑключением поÑледнего) можно редактировать "
+"только в течение 10 минут"
+msgstr[2] ""
"К Ñожалению, комментарии (за иÑключением поÑледнего) можно редактировать "
"только в течение 10 минут"
-#: models/__init__.py:304
+#: models/__init__.py:441
msgid "Sorry, but only post owners or moderators can edit comments"
msgstr ""
"К Ñожалению, только владелец или модератор может редактировать комментарий"
-#: models/__init__.py:318
+#: models/__init__.py:454
msgid ""
"Sorry, since your account is suspended you can comment only your own posts"
msgstr ""
"К Ñожалению, так как ваш аккаунт приоÑтановлен вы можете комментировать "
"только Ñвои ÑобÑтвенные ÑообщениÑ"
-#: models/__init__.py:322
+#: models/__init__.py:458
#, python-format
msgid ""
"Sorry, to comment any post a minimum reputation of %(min_rep)s points is "
@@ -2079,7 +2444,7 @@ msgstr ""
"балов кармы. Ð’Ñ‹ можете комментировать только Ñвои ÑобÑтвенные ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¸ "
"ответы на ваши вопроÑÑ‹"
-#: models/__init__.py:350
+#: models/__init__.py:486
msgid ""
"This post has been deleted and can be seen only by post owners, site "
"administrators and moderators"
@@ -2087,7 +2452,7 @@ msgstr ""
"Этот поÑÑ‚ был удален, его может увидеть только владелец, админиÑтраторы "
"Ñайта и модераторы"
-#: models/__init__.py:367
+#: models/__init__.py:503
msgid ""
"Sorry, only moderators, site administrators and post owners can edit deleted "
"posts"
@@ -2095,19 +2460,19 @@ msgstr ""
"Извините, только модераторы, админиÑтраторы Ñайта и владельцы ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ "
"могут редактировать удаленные ÑообщениÑ"
-#: models/__init__.py:382
+#: models/__init__.py:518
msgid "Sorry, since your account is blocked you cannot edit posts"
msgstr ""
"К Ñожалению, так как Ваш ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ заблокирована Ð’Ñ‹ не можете "
"редактировать ÑообщениÑ"
-#: models/__init__.py:386
+#: models/__init__.py:522
msgid "Sorry, since your account is suspended you can edit only your own posts"
msgstr ""
"К Ñожалению, так как ваша ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ приоÑтановлена вы можете "
"редактировать только ваши ÑобÑтвенные ÑообщениÑ"
-#: models/__init__.py:391
+#: models/__init__.py:527
#, python-format
msgid ""
"Sorry, to edit wiki posts, a minimum reputation of %(min_rep)s is required"
@@ -2115,7 +2480,7 @@ msgstr ""
"К Ñожалению, Ð´Ð»Ñ Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð²Ð¸ÐºÐ¸ Ñообщений, требуетÑÑ %(min_rep)s баллов "
"кармы"
-#: models/__init__.py:398
+#: models/__init__.py:534
#, python-format
msgid ""
"Sorry, to edit other people's posts, a minimum reputation of %(min_rep)s is "
@@ -2124,7 +2489,7 @@ msgstr ""
"К Ñожалению, Ð´Ð»Ñ Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ñ‚ÑŒ ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð´Ñ€ÑƒÐ³Ð¸Ñ… пользователей, требуетÑÑ %"
"(min_rep)s балов кармы"
-#: models/__init__.py:461
+#: models/__init__.py:597
msgid ""
"Sorry, cannot delete your question since it has an upvoted answer posted by "
"someone else"
@@ -2141,20 +2506,20 @@ msgstr[2] ""
"К Ñожалению, Ð’Ñ‹ не может удалить ваш вопроÑ, поÑкольку на него ответили "
"другие пользователи и их ответы получили положительные голоÑа"
-#: models/__init__.py:476
+#: models/__init__.py:612
msgid "Sorry, since your account is blocked you cannot delete posts"
msgstr ""
"К Ñожалению, так как Ваша ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ заблокирована Ð’Ñ‹ не можете удалÑÑ‚ÑŒ "
"ÑообщениÑ"
-#: models/__init__.py:480
+#: models/__init__.py:616
msgid ""
"Sorry, since your account is suspended you can delete only your own posts"
msgstr ""
"К Ñожалению, так как Ваша ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ приоÑтановлена Ð’Ñ‹ не можете удалÑÑ‚ÑŒ "
"ÑообщениÑ"
-#: models/__init__.py:484
+#: models/__init__.py:620
#, python-format
msgid ""
"Sorry, to deleted other people' posts, a minimum reputation of %(min_rep)s "
@@ -2163,19 +2528,19 @@ msgstr ""
"К Ñожалению, Ð´Ð»Ñ ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ñообщений других пользователей, требуетÑÑ %"
"(min_rep)s балов кармы"
-#: models/__init__.py:504
+#: models/__init__.py:640
msgid "Sorry, since your account is blocked you cannot close questions"
msgstr ""
"К Ñожалению, так как Ваша ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ заблокирована вы не можете закрыть "
"вопроÑÑ‹"
-#: models/__init__.py:508
+#: models/__init__.py:644
msgid "Sorry, since your account is suspended you cannot close questions"
msgstr ""
"К Ñожалению, так как Ваша ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ приоÑтановлена вы не можете закрыть "
"вопроÑÑ‹"
-#: models/__init__.py:512
+#: models/__init__.py:648
#, python-format
msgid ""
"Sorry, to close other people' posts, a minimum reputation of %(min_rep)s is "
@@ -2184,14 +2549,14 @@ msgstr ""
"К Ñожалению, Ð´Ð»Ñ Ð·Ð°ÐºÑ€Ñ‹Ñ‚Ð¸Ñ ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð´Ñ€ÑƒÐ³Ð¸Ñ… пользователей, требуетÑÑ %"
"(min_rep)s балов кармы"
-#: models/__init__.py:521
+#: models/__init__.py:657
#, python-format
msgid ""
"Sorry, to close own question a minimum reputation of %(min_rep)s is required"
msgstr ""
"К Ñожалению, Ð´Ð»Ñ Ð·Ð°ÐºÑ€Ñ‹Ñ‚Ð¸Ñ Ñвоего вопроÑа, требуетÑÑ %(min_rep)s балов кармы"
-#: models/__init__.py:545
+#: models/__init__.py:681
#, python-format
msgid ""
"Sorry, only administrators, moderators or post owners with reputation > %"
@@ -2200,7 +2565,7 @@ msgstr ""
"К Ñожалению, только админиÑтраторы, модераторы или владельцы Ñ ÐºÐ°Ñ€Ð¼Ð¾Ð¹ >%"
"(min_rep)s может открыть вопроÑ"
-#: models/__init__.py:551
+#: models/__init__.py:687
#, python-format
msgid ""
"Sorry, to reopen own question a minimum reputation of %(min_rep)s is required"
@@ -2208,29 +2573,29 @@ msgstr ""
"К Ñожалению, чтобы вновь открыть ÑобÑтвенный Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ñ‚Ñ€ÐµÐ±ÑƒÐµÑ‚ÑÑ %(min_rep)s "
"баллов кармы"
-#: models/__init__.py:571
+#: models/__init__.py:707
msgid "cannot flag message as offensive twice"
msgstr "Ð½ÐµÐ»ÑŒÐ·Ñ Ð¿Ð¾Ð¼ÐµÑ‚Ð¸Ñ‚ÑŒ Ñообщение как оÑкорбительное дважды"
-#: models/__init__.py:576
+#: models/__init__.py:712
msgid "blocked users cannot flag posts"
msgstr "заблокированные пользователи не могут помечать ÑообщениÑ"
-#: models/__init__.py:578
+#: models/__init__.py:714
msgid "suspended users cannot flag posts"
msgstr "приоÑтановленные пользователи не могут помечать ÑообщениÑ"
-#: models/__init__.py:580
+#: models/__init__.py:716
#, python-format
msgid "need > %(min_rep)s points to flag spam"
msgstr "необходимо > %(min_rep)s баллов чтобы отметить как Ñпам"
-#: models/__init__.py:599
+#: models/__init__.py:735
#, python-format
msgid "%(max_flags_per_day)s exceeded"
msgstr "%(max_flags_per_day)s превышен"
-#: models/__init__.py:614
+#: models/__init__.py:750
msgid ""
"Sorry, only question owners, site administrators and moderators can retag "
"deleted questions"
@@ -2238,82 +2603,87 @@ msgstr ""
"К Ñожалению, только владельцы, админиÑтраторы Ñайта и модераторы могут "
"менÑÑ‚ÑŒ теги к удаленным вопроÑам"
-#: models/__init__.py:621
+#: models/__init__.py:757
msgid "Sorry, since your account is blocked you cannot retag questions"
msgstr ""
"К Ñожалению, так как Ваша ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ заблокирована вы не можете поменÑÑ‚ÑŒ "
"теги вопроÑа "
-#: models/__init__.py:625
+#: models/__init__.py:761
msgid ""
"Sorry, since your account is suspended you can retag only your own questions"
msgstr ""
"К Ñожалению, так как Ваша ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ приоÑтановлена вы можете менÑÑ‚ÑŒ "
"теги только на Ñвои вопроÑÑ‹"
-#: models/__init__.py:629
+#: models/__init__.py:765
#, python-format
msgid ""
"Sorry, to retag questions a minimum reputation of %(min_rep)s is required"
msgstr "К Ñожалению, Ð´Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñ‚ÐµÐ³Ð¾Ð² требуетÑÑ %(min_rep)s баллов кармы"
-#: models/__init__.py:648
+#: models/__init__.py:784
msgid "Sorry, since your account is blocked you cannot delete comment"
msgstr ""
"К Ñожалению, так как Ваша ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ заблокирована Ð’Ñ‹ не можете удалÑÑ‚ÑŒ "
"комментарий"
-#: models/__init__.py:652
+#: models/__init__.py:788
msgid ""
"Sorry, since your account is suspended you can delete only your own comments"
msgstr ""
"К Ñожалению, так как Ваша ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ приоÑтановлена вы можете удалÑÑ‚ÑŒ "
"только ваши ÑобÑтвенные комментарии"
-#: models/__init__.py:656
+#: models/__init__.py:792
#, python-format
msgid "Sorry, to delete comments reputation of %(min_rep)s is required"
msgstr ""
"К Ñожалению, Ð´Ð»Ñ ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ ÐºÐ¾Ð¼Ð¼ÐµÐ½Ñ‚Ð°Ñ€Ð¸ÐµÐ² требуетÑÑ %(min_rep)s баллов кармы"
-#: models/__init__.py:679
+#: models/__init__.py:815
msgid "cannot revoke old vote"
msgstr "Ð³Ð¾Ð»Ð¾Ñ Ð½Ðµ может быть отозван"
-#: models/__init__.py:1213 views/users.py:363
+#: models/__init__.py:1370
+#, fuzzy
+msgid "Anonymous"
+msgstr "анонимный"
+
+#: models/__init__.py:1456 views/users.py:365
msgid "Site Adminstrator"
msgstr "ÐдминиÑтратор Ñайта"
-#: models/__init__.py:1215 views/users.py:365
+#: models/__init__.py:1458 views/users.py:367
msgid "Forum Moderator"
msgstr "С уважением, Модератор форума"
-#: models/__init__.py:1217 views/users.py:367
+#: models/__init__.py:1460 views/users.py:369
msgid "Suspended User"
msgstr "ПриоÑтановленный пользователь "
-#: models/__init__.py:1219 views/users.py:369
+#: models/__init__.py:1462 views/users.py:371
msgid "Blocked User"
msgstr "Заблокированный пользователь"
-#: models/__init__.py:1221 views/users.py:371
+#: models/__init__.py:1464 views/users.py:373
msgid "Registered User"
msgstr "ЗарегиÑтрированный пользователь"
-#: models/__init__.py:1223
+#: models/__init__.py:1466
msgid "Watched User"
msgstr "Видный пользователь"
-#: models/__init__.py:1225
+#: models/__init__.py:1468
msgid "Approved User"
msgstr "Утвержденный Пользователь"
-#: models/__init__.py:1281
+#: models/__init__.py:1563
#, python-format
msgid "%(username)s karma is %(reputation)s"
msgstr "%(reputation)s кармы %(username)s "
-#: models/__init__.py:1291
+#: models/__init__.py:1573
#, python-format
msgid "one gold badge"
msgid_plural "%(count)d gold badges"
@@ -2321,7 +2691,7 @@ msgstr[0] "Ð·Ð¾Ð»Ð¾Ñ‚Ð°Ñ Ð¼ÐµÐ´Ð°Ð»ÑŒ"
msgstr[1] "%(count)d золотых медалей"
msgstr[2] "%(count)d золотых медалей"
-#: models/__init__.py:1298
+#: models/__init__.py:1580
#, python-format
msgid "one silver badge"
msgid_plural "%(count)d silver badges"
@@ -2329,7 +2699,7 @@ msgstr[0] "ÑеребрÑÐ½Ð°Ñ Ð¼ÐµÐ´Ð°Ð»ÑŒ"
msgstr[1] "%(count)d ÑеребрÑных медалей"
msgstr[2] "%(count)d ÑеребрÑных медалей"
-#: models/__init__.py:1305
+#: models/__init__.py:1587
#, python-format
msgid "one bronze badge"
msgid_plural "%(count)d bronze badges"
@@ -2337,28 +2707,28 @@ msgstr[0] "Ð±Ñ€Ð¾Ð½Ð·Ð¾Ð²Ð°Ñ Ð¼ÐµÐ´Ð°Ð»ÑŒ"
msgstr[1] "%(count)d бронзовых медалей"
msgstr[2] "%(count)d бронзовых медалей"
-#: models/__init__.py:1316
+#: models/__init__.py:1598
#, python-format
msgid "%(item1)s and %(item2)s"
msgstr "%(item1)s и %(item2)s"
-#: models/__init__.py:1320
+#: models/__init__.py:1602
#, python-format
msgid "%(user)s has %(badges)s"
msgstr "%(user)s имеет %(badges)s"
-#: models/__init__.py:1633 models/__init__.py:1639 models/__init__.py:1644
-#: models/__init__.py:1649
+#: models/__init__.py:1966 models/__init__.py:1972 models/__init__.py:1977
+#: models/__init__.py:1982
#, python-format
msgid "Re: \"%(title)s\""
msgstr "Re: \"%(title)s\""
-#: models/__init__.py:1654 models/__init__.py:1659
+#: models/__init__.py:1987 models/__init__.py:1992
#, python-format
msgid "Question: \"%(title)s\""
msgstr "ВопроÑ: \"%(title)s\""
-#: models/__init__.py:1844
+#: models/__init__.py:2170
#, python-format
msgid ""
"Congratulations, you have received a badge '%(badge_name)s'. Check out <a "
@@ -2367,6 +2737,10 @@ msgstr ""
"ПоздравлÑем, вы получили '%(badge_name)s'. Проверьте Ñвой <a href=\"%"
"(user_profile)s\">профиль</a>."
+#: models/__init__.py:2349 views/commands.py:397
+msgid "Your tag subscription was saved, thanks!"
+msgstr ""
+
#: models/answer.py:105
msgid ""
"Sorry, the answer you are looking for is no longer available, because the "
@@ -2379,154 +2753,154 @@ msgstr ""
msgid "Sorry, this answer has been removed and is no longer accessible"
msgstr "К Ñожалению, Ñтот ответ был удален и больше не доÑтупен"
-#: models/badges.py:128
+#: models/badges.py:129
#, python-format
msgid "Deleted own post with %(votes)s or more upvotes"
msgstr "Удалили Ñвоё Ñообщение Ñ %(votes)s или более позитивными откликами"
-#: models/badges.py:132
+#: models/badges.py:133
msgid "Disciplined"
msgstr "ДиÑциплинированный"
-#: models/badges.py:150
+#: models/badges.py:151
#, python-format
msgid "Deleted own post with %(votes)s or more downvotes"
msgstr "Удалили Ñвоё Ñообщение Ñ %(votes)s или более негативными откликами"
-#: models/badges.py:154
+#: models/badges.py:155
msgid "Peer Pressure"
msgstr "Давление ÑообщеÑтва"
-#: models/badges.py:173
+#: models/badges.py:174
#, python-format
msgid "Received at least %(votes)s upvote for an answer for the first time"
msgstr "Получил по меньшей мере %(votes)s позитивных голоÑов за первый ответ"
-#: models/badges.py:177
+#: models/badges.py:178
msgid "Teacher"
msgstr "Учитель"
-#: models/badges.py:217
+#: models/badges.py:218
#, fuzzy
msgid "Supporter"
msgstr "Фанат"
-#: models/badges.py:218
+#: models/badges.py:219
msgid "First upvote"
msgstr "Впервые дали положительный отклик"
-#: models/badges.py:226
+#: models/badges.py:227
msgid "Critic"
msgstr "Критик"
-#: models/badges.py:227
+#: models/badges.py:228
msgid "First downvote"
msgstr "Впервые дали негативный отклик"
-#: models/badges.py:236
+#: models/badges.py:237
msgid "Civic Duty"
msgstr "ОбщеÑтвенный Долг"
-#: models/badges.py:237
+#: models/badges.py:238
#, python-format
msgid "Voted %(num)s times"
msgstr "ГолоÑовал %(num)s раз"
-#: models/badges.py:251
+#: models/badges.py:252
#, python-format
msgid "Answered own question with at least %(num)s up votes"
msgstr "Ответил на Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð¸ получил более %(num)s позитивных откликов"
-#: models/badges.py:255
+#: models/badges.py:256
msgid "Self-Learner"
msgstr "Самоучка"
-#: models/badges.py:303
+#: models/badges.py:304
msgid "Nice Answer"
msgstr "Хороший ответ"
-#: models/badges.py:308 models/badges.py:320 models/badges.py:332
+#: models/badges.py:309 models/badges.py:321 models/badges.py:333
#, python-format
msgid "Answer voted up %(num)s times"
msgstr "Ответ получил %(num)s положительных голоÑов"
-#: models/badges.py:315
+#: models/badges.py:316
msgid "Good Answer"
msgstr "Очень Хороший Ответ"
-#: models/badges.py:327
+#: models/badges.py:328
msgid "Great Answer"
msgstr "Замечательный Ответ"
-#: models/badges.py:339
+#: models/badges.py:340
msgid "Nice Question"
msgstr "Хороший ВопроÑ"
-#: models/badges.py:344 models/badges.py:356 models/badges.py:368
+#: models/badges.py:345 models/badges.py:357 models/badges.py:369
#, python-format
msgid "Question voted up %(num)s times"
msgstr "Ð’Ð¾Ð¿Ñ€Ð¾Ñ Ñ %(num)s или более положительными откликами"
-#: models/badges.py:351
+#: models/badges.py:352
msgid "Good Question"
msgstr "Очень Хороший ВопроÑ"
-#: models/badges.py:363
+#: models/badges.py:364
msgid "Great Question"
msgstr "Замечательный ВопроÑ"
-#: models/badges.py:375
+#: models/badges.py:376
msgid "Student"
msgstr "Студент"
-#: models/badges.py:380
+#: models/badges.py:381
msgid "Asked first question with at least one up vote"
msgstr "Задан первый вопроÑ, получивший Ñ…Ð¾Ñ‚Ñ Ð±Ñ‹ один положительный отклик"
-#: models/badges.py:413
+#: models/badges.py:414
msgid "Popular Question"
msgstr "ПопулÑрный ВопроÑ"
-#: models/badges.py:417 models/badges.py:428 models/badges.py:440
+#: models/badges.py:418 models/badges.py:429 models/badges.py:441
#, python-format
msgid "Asked a question with %(views)s views"
msgstr "Задал Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ñ %(views)s проÑмотрами"
-#: models/badges.py:424
+#: models/badges.py:425
msgid "Notable Question"
msgstr "ВыдающийÑÑ Ð’Ð¾Ð¿Ñ€Ð¾Ñ"
-#: models/badges.py:435
+#: models/badges.py:436
msgid "Famous Question"
msgstr "Знаменитый ВопроÑ"
-#: models/badges.py:449
+#: models/badges.py:450
msgid "Asked a question and accepted an answer"
msgstr "Задал Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð¸ принÑл ответ"
-#: models/badges.py:452
+#: models/badges.py:453
msgid "Scholar"
msgstr "Ученик"
-#: models/badges.py:494
+#: models/badges.py:495
msgid "Enlightened"
msgstr "ПроÑвещенный"
-#: models/badges.py:498
+#: models/badges.py:499
#, python-format
msgid "First answer was accepted with %(num)s or more votes"
msgstr "Первый ответ был отмечен, по крайней мере %(num)s голоÑами"
-#: models/badges.py:506
+#: models/badges.py:507
msgid "Guru"
msgstr "Гуру"
-#: models/badges.py:509
+#: models/badges.py:510
#, python-format
msgid "Answer accepted with %(num)s or more votes"
msgstr "Ответ отмечен, по меньшей мере %(num)s голоÑами"
-#: models/badges.py:517
+#: models/badges.py:518
#, python-format
msgid ""
"Answered a question more than %(days)s days later with at least %(votes)s "
@@ -2534,101 +2908,120 @@ msgid ""
msgstr ""
"Ответил на Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð±Ð¾Ð»ÐµÐµ чем %(days)s дней ÑпуÑÑ‚Ñ Ñ Ð¼Ð¸Ð½Ð¸Ð¼ÑƒÐ¼ %(votes)s голоÑами"
-#: models/badges.py:524
+#: models/badges.py:525
msgid "Necromancer"
msgstr "Ðекромант"
-#: models/badges.py:547
+#: models/badges.py:548
msgid "Citizen Patrol"
msgstr "ГражданÑкий Дозор"
-#: models/badges.py:550
+#: models/badges.py:551
msgid "First flagged post"
msgstr "Первое отмеченное Ñообщение"
-#: models/badges.py:562
+#: models/badges.py:563
#, fuzzy
msgid "Cleanup"
msgstr "Уборщик"
-#: models/badges.py:565
+#: models/badges.py:566
#, fuzzy
msgid "First rollback"
msgstr "Первый откат "
-#: models/badges.py:576
+#: models/badges.py:577
msgid "Pundit"
msgstr "Знаток"
-#: models/badges.py:579
+#: models/badges.py:580
msgid "Left 10 comments with score of 10 or more"
msgstr "ОÑтавил 10 комментариев Ñ 10-ÑŽ или более положительными откликами"
-#: models/badges.py:611
+#: models/badges.py:612
msgid "Editor"
msgstr "Редактор"
-#: models/badges.py:614
+#: models/badges.py:615
#, fuzzy
msgid "First edit"
msgstr "Первое иÑправление "
-#: models/badges.py:622
+#: models/badges.py:623
msgid "Associate Editor"
msgstr "Помощник редактора"
-#: models/badges.py:626
+#: models/badges.py:627
#, python-format
msgid "Edited %(num)s entries"
msgstr "ИÑправил %(num)s запиÑей"
-#: models/badges.py:633
+#: models/badges.py:634
msgid "Organizer"
msgstr "Организатор"
-#: models/badges.py:636
+#: models/badges.py:637
#, fuzzy
msgid "First retag"
msgstr "Первое изменение Ñ‚Ñгов "
-#: models/badges.py:643
+#: models/badges.py:644
msgid "Autobiographer"
msgstr "Ðвтобиограф"
-#: models/badges.py:646
+#: models/badges.py:647
msgid "Completed all user profile fields"
msgstr "Заполнены вÑе пункты в профиле"
-#: models/badges.py:662
+#: models/badges.py:663
#, python-format
msgid "Question favorited by %(num)s users"
msgstr "Ð’Ð¾Ð¿Ñ€Ð¾Ñ Ð´Ð¾Ð±Ð°Ð²Ð¸Ð»Ð¸ в закладки %(num)s пользователей"
-#: models/badges.py:688
+#: models/badges.py:689
msgid "Stellar Question"
msgstr "Гениальный ВопроÑ"
-#: models/badges.py:697
+#: models/badges.py:698
msgid "Favorite Question"
msgstr "ИнтереÑный ВопроÑ"
-#: models/badges.py:707
+#: models/badges.py:710
msgid "Enthusiast"
msgstr "ЭнтузиаÑÑ‚"
-#: models/badges.py:710
-msgid "Visited site every day for 30 days in a row"
+#: models/badges.py:714
+#, fuzzy, python-format
+msgid "Visited site every day for %(num)s days in a row"
msgstr "ПоÑещал Ñайт каждый день в течение 30 дней подрÑд"
-#: models/badges.py:718
+#: models/badges.py:732
msgid "Commentator"
msgstr "Комментатор"
-#: models/badges.py:721
-msgid "Posted 10 comments"
-msgstr "РазмеÑтил 10 комментариев"
+#: models/badges.py:736
+#, fuzzy, python-format
+msgid "Posted %(num_comments)s comments"
+msgstr "(один комментарий)"
+
+#: models/badges.py:752
+msgid "Taxonomist"
+msgstr "ТакÑономиÑÑ‚"
-#: models/meta.py:110
+#: models/badges.py:756
+#, fuzzy, python-format
+msgid "Created a tag used by %(num)s questions"
+msgstr "Создал тег, иÑпользованный в 50 вопроÑах"
+
+#: models/badges.py:776
+msgid "Expert"
+msgstr "ЭкÑперт"
+
+#: models/badges.py:779
+msgid "Very active in one tag"
+msgstr "Очень активны в одном теге"
+
+#: models/meta.py:111
msgid ""
"Sorry, the comment you are looking for is no longer accessible, because the "
"parent question has been removed"
@@ -2636,7 +3029,7 @@ msgstr ""
"К Ñожалению, комментарии который вы ищете больше не доÑтупны, потому что "
"Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð±Ñ‹Ð» удален"
-#: models/meta.py:117
+#: models/meta.py:118
msgid ""
"Sorry, the comment you are looking for is no longer accessible, because the "
"parent answer has been removed"
@@ -2644,31 +3037,41 @@ msgstr ""
"К Ñожалению, комментарий который Ð’Ñ‹ ищете больше не доÑтупен, потому что "
"ответ был удален"
-#: models/question.py:325
+#: models/question.py:72
+#, python-format
+msgid "\" and \"%s\""
+msgstr "\" и \"%s\""
+
+#: models/question.py:75
+#, fuzzy
+msgid "\" and more"
+msgstr "Узнать больше"
+
+#: models/question.py:425
msgid "Sorry, this question has been deleted and is no longer accessible"
msgstr "Извините, Ð²Ð¾Ð¿Ñ€Ð¾Ñ ÑƒÐ´Ð°Ð»Ñ‘Ð½ и более не доÑтупен"
-#: models/question.py:714
+#: models/question.py:853
#, python-format
msgid "%(author)s modified the question"
msgstr "%(author)s отредактировали вопроÑ"
-#: models/question.py:718
+#: models/question.py:857
#, python-format
msgid "%(people)s posted %(new_answer_count)s new answers"
msgstr "%(people)s задали новых %(new_answer_count)s вопроÑов"
-#: models/question.py:723
+#: models/question.py:862
#, python-format
msgid "%(people)s commented the question"
msgstr "%(people)s оÑтавили комментарии"
-#: models/question.py:728
+#: models/question.py:867
#, python-format
msgid "%(people)s commented answers"
msgstr "%(people)s комментировали вопроÑÑ‹"
-#: models/question.py:730
+#: models/question.py:869
#, python-format
msgid "%(people)s commented an answer"
msgstr "%(people)s комментировали ответы"
@@ -2695,72 +3098,72 @@ msgstr ""
"%(points)s было отобрано у %(username)s's за учаÑтие в вопроÑе %"
"(question_title)s"
-#: models/tag.py:91
+#: models/tag.py:138
msgid "interesting"
msgstr "интереÑные"
-#: models/tag.py:91
+#: models/tag.py:138
msgid "ignored"
msgstr "игнорируемые"
-#: models/user.py:264
+#: models/user.py:260
msgid "Entire forum"
msgstr "ВеÑÑŒ форум"
-#: models/user.py:265
+#: models/user.py:261
msgid "Questions that I asked"
msgstr "ВопроÑÑ‹ заданные мной"
-#: models/user.py:266
+#: models/user.py:262
msgid "Questions that I answered"
msgstr "ВопроÑÑ‹ отвеченные мной"
-#: models/user.py:267
+#: models/user.py:263
msgid "Individually selected questions"
msgstr "Индивидуально избранные вопроÑÑ‹"
-#: models/user.py:268
+#: models/user.py:264
msgid "Mentions and comment responses"
msgstr "Ð£Ð¿Ð¾Ð¼Ð¸Ð½Ð°Ð½Ð¸Ñ Ð¸ комментарии ответов"
-#: models/user.py:271
+#: models/user.py:267
msgid "Instantly"
msgstr "Мгновенно"
-#: models/user.py:272
+#: models/user.py:268
msgid "Daily"
msgstr "Раз в день"
-#: models/user.py:273
+#: models/user.py:269
msgid "Weekly"
msgstr "Раз в неделю"
-#: models/user.py:274
+#: models/user.py:270
msgid "No email"
msgstr "Отменить"
#: skins/default/templates/404.jinja.html:3
-#: skins/default/templates/404.jinja.html:11
+#: skins/default/templates/404.jinja.html:10
msgid "Page not found"
msgstr "Страница не найдена"
-#: skins/default/templates/404.jinja.html:15
+#: skins/default/templates/404.jinja.html:13
msgid "Sorry, could not find the page you requested."
msgstr "Извините, но запрошенный Вами документ не был найден."
-#: skins/default/templates/404.jinja.html:17
+#: skins/default/templates/404.jinja.html:15
msgid "This might have happened for the following reasons:"
msgstr "Это могло произойти по Ñледующим причинам:"
-#: skins/default/templates/404.jinja.html:19
+#: skins/default/templates/404.jinja.html:17
msgid "this question or answer has been deleted;"
msgstr "Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð¸Ð»Ð¸ ответ были удалены;"
-#: skins/default/templates/404.jinja.html:20
+#: skins/default/templates/404.jinja.html:18
msgid "url has error - please check it;"
msgstr "Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð±Ñ‹Ð» неверен - пожалуйÑта проверьте;"
-#: skins/default/templates/404.jinja.html:21
+#: skins/default/templates/404.jinja.html:19
msgid ""
"the page you tried to visit is protected or you don't have sufficient "
"points, see"
@@ -2768,62 +3171,63 @@ msgstr ""
"документ который Ð’Ñ‹ запроÑили защищён или у Ð’Ð°Ñ Ð½Ðµ хватает \"репутации\", "
"пожалуйÑта поÑмотрите"
-#: skins/default/templates/404.jinja.html:21
-#: skins/default/templates/footer.html:6
-#: skins/default/templates/question_edit_tips.html:16
-#: skins/default/templates/blocks/header_meta_links.html:52
+#: skins/default/templates/404.jinja.html:19
+#: skins/default/templates/blocks/footer.html:6
+#: skins/default/templates/blocks/header_meta_links.html:13
+#: skins/default/templates/blocks/question_edit_tips.html:15
msgid "faq"
msgstr "чаÑто задаваемые вопроÑÑ‹"
-#: skins/default/templates/404.jinja.html:22
+#: skins/default/templates/404.jinja.html:20
msgid "if you believe this error 404 should not have occured, please"
msgstr "еÑли Ð’Ñ‹ Ñчитаете что Ñта ошибка показана неверно, пожалуйÑта"
-#: skins/default/templates/404.jinja.html:23
+#: skins/default/templates/404.jinja.html:21
msgid "report this problem"
msgstr "Ñообщите об Ñтой проблеме"
-#: skins/default/templates/404.jinja.html:32
-#: skins/default/templates/500.jinja.html:13
+#: skins/default/templates/404.jinja.html:30
+#: skins/default/templates/500.jinja.html:11
msgid "back to previous page"
msgstr "вернутьÑÑ Ð½Ð° предыдущую Ñтраницу"
-#: skins/default/templates/404.jinja.html:33
-#: skins/default/templates/questions.html:13
+#: skins/default/templates/404.jinja.html:31
+#: skins/default/templates/main_page/tab_bar.html:9
msgid "see all questions"
msgstr "Ñмотреть вÑе вопроÑÑ‹"
-#: skins/default/templates/404.jinja.html:34
+#: skins/default/templates/404.jinja.html:32
msgid "see all tags"
msgstr "Ñмотреть вÑе темы"
#: skins/default/templates/500.jinja.html:3
-#: skins/default/templates/500.jinja.html:6
+#: skins/default/templates/500.jinja.html:5
msgid "Internal server error"
msgstr "ВнутреннÑÑ Ð¾ÑˆÐ¸Ð±ÐºÐ° Ñервера"
-#: skins/default/templates/500.jinja.html:10
+#: skins/default/templates/500.jinja.html:8
msgid "system error log is recorded, error will be fixed as soon as possible"
msgstr ""
"об Ñтой ошибке была Ñделана запиÑÑŒ в журнале и ÑоответÑтвующие иÑÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ "
"будут вÑкоре Ñделаны"
-#: skins/default/templates/500.jinja.html:11
+#: skins/default/templates/500.jinja.html:9
msgid "please report the error to the site administrators if you wish"
msgstr ""
"еÑли у Ð’Ð°Ñ Ð¸Ð¼ÐµÐµÑ‚ÑÑ Ð¶ÐµÐ»Ð°Ð½Ð¸Ðµ, пожалуйÑта Ñообщите об Ñтой ошибке вебмаÑтеру"
-#: skins/default/templates/500.jinja.html:14
+#: skins/default/templates/500.jinja.html:12
msgid "see latest questions"
msgstr "Ñмотреть Ñамые новые вопроÑÑ‹"
-#: skins/default/templates/500.jinja.html:15
+#: skins/default/templates/500.jinja.html:13
msgid "see tags"
msgstr "Ñмотреть темы"
-#: skins/default/templates/about.html:3 skins/default/templates/about.html:6
-msgid "About"
-msgstr "О наÑ"
+#: skins/default/templates/about.html:3 skins/default/templates/about.html:5
+#, python-format
+msgid "About %(site_name)s"
+msgstr ""
#: skins/default/templates/answer_edit.html:4
#: skins/default/templates/answer_edit.html:10
@@ -2831,191 +3235,85 @@ msgid "Edit answer"
msgstr "Править ответ"
#: skins/default/templates/answer_edit.html:10
-#: skins/default/templates/question_edit.html:10
-#: skins/default/templates/question_retag.html:6
+#: skins/default/templates/question_edit.html:9
+#: skins/default/templates/question_retag.html:5
#: skins/default/templates/revisions.html:7
msgid "back"
msgstr "назад"
-#: skins/default/templates/answer_edit.html:15
-#: skins/default/templates/question_edit.html:14
+#: skins/default/templates/answer_edit.html:14
+#: skins/default/templates/question_edit.html:11
msgid "revision"
msgstr "верÑÐ¸Ñ Ð¿Ñ€Ð°Ð²ÐºÐ¸"
-#: skins/default/templates/answer_edit.html:18
-#: skins/default/templates/question_edit.html:19
+#: skins/default/templates/answer_edit.html:17
+#: skins/default/templates/question_edit.html:16
msgid "select revision"
msgstr "выбрать верÑию"
-#: skins/default/templates/answer_edit.html:22
-#: skins/default/templates/question_edit.html:28
+#: skins/default/templates/answer_edit.html:21
+#: skins/default/templates/question_edit.html:20
msgid "Save edit"
msgstr "Сохранить"
-#: skins/default/templates/answer_edit.html:23
-#: skins/default/templates/close.html:19
-#: skins/default/templates/feedback.html:45
-#: skins/default/templates/question_edit.html:29
-#: skins/default/templates/question_retag.html:26
-#: skins/default/templates/reopen.html:30
-#: skins/default/templates/user_edit.html:76
+#: skins/default/templates/answer_edit.html:22
+#: skins/default/templates/close.html:16
+#: skins/default/templates/feedback.html:42
+#: skins/default/templates/question_edit.html:21
+#: skins/default/templates/question_retag.html:22
+#: skins/default/templates/reopen.html:27
+#: skins/default/templates/subscribe_for_tags.html:16
#: skins/default/templates/authopenid/changeemail.html:38
+#: skins/default/templates/user_profile/user_edit.html:84
msgid "Cancel"
msgstr "Отменить"
-#: skins/default/templates/answer_edit.html:59
-#: skins/default/templates/answer_edit.html:62
-#: skins/default/templates/ask.html:36 skins/default/templates/ask.html:39
-#: skins/default/templates/macros.html:445
-#: skins/default/templates/question.html:465
-#: skins/default/templates/question.html:468
-#: skins/default/templates/question_edit.html:63
-#: skins/default/templates/question_edit.html:66
+#: skins/default/templates/answer_edit.html:60
+#: skins/default/templates/answer_edit.html:63
+#: skins/default/templates/ask.html:43 skins/default/templates/ask.html:46
+#: skins/default/templates/macros.html:592
+#: skins/default/templates/question.html:472
+#: skins/default/templates/question.html:475
+#: skins/default/templates/question_edit.html:62
+#: skins/default/templates/question_edit.html:65
msgid "hide preview"
msgstr "Ñкрыть предварительный проÑмотр"
-#: skins/default/templates/answer_edit.html:62
-#: skins/default/templates/ask.html:39
-#: skins/default/templates/question.html:468
-#: skins/default/templates/question_edit.html:66
+#: skins/default/templates/answer_edit.html:63
+#: skins/default/templates/ask.html:46
+#: skins/default/templates/question.html:475
+#: skins/default/templates/question_edit.html:65
msgid "show preview"
msgstr "показать предварительный проÑмотр"
-#: skins/default/templates/answer_edit_tips.html:3
-msgid "answer tips"
-msgstr "Советы как лучше давать ответы"
-
-#: skins/default/templates/answer_edit_tips.html:6
-msgid "please make your answer relevant to this community"
-msgstr ""
-"пожалуйÑта поÑтарайтеÑÑŒ дать ответ который будет интереÑен коллегам по форуму"
-
-#: skins/default/templates/answer_edit_tips.html:9
-msgid "try to give an answer, rather than engage into a discussion"
-msgstr "поÑтарайтеÑÑŒ на Ñамом деле дать ответ и избегать диÑкуÑÑий"
-
-#: skins/default/templates/answer_edit_tips.html:12
-msgid "please try to provide details"
-msgstr "включите детали в Ваш ответ"
-
-#: skins/default/templates/answer_edit_tips.html:15
-#: skins/default/templates/question_edit_tips.html:12
-msgid "be clear and concise"
-msgstr "Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð´Ð¾Ð»Ð¶ÐµÐ½ быть четким и лаконичным"
-
-#: skins/default/templates/answer_edit_tips.html:19
-#: skins/default/templates/question_edit_tips.html:16
-msgid "see frequently asked questions"
-msgstr "поÑмотрите на чаÑто задаваемые вопроÑÑ‹"
-
-#: skins/default/templates/answer_edit_tips.html:25
-#: skins/default/templates/question_edit_tips.html:22
-msgid "Markdown tips"
-msgstr "ПоддерживаетÑÑ Ñзык разметки - Markdown"
-
-#: skins/default/templates/answer_edit_tips.html:29
-#: skins/default/templates/question_edit_tips.html:26
-msgid "*italic*"
-msgstr "*курÑив*"
-
-#: skins/default/templates/answer_edit_tips.html:32
-#: skins/default/templates/question_edit_tips.html:29
-msgid "**bold**"
-msgstr "**жирный**"
-
-#: skins/default/templates/answer_edit_tips.html:36
-#: skins/default/templates/question_edit_tips.html:33
-msgid "*italic* or _italic_"
-msgstr "*курÑив* или _курÑив_"
-
-#: skins/default/templates/answer_edit_tips.html:39
-#: skins/default/templates/question_edit_tips.html:36
-msgid "**bold** or __bold__"
-msgstr "**жирный шрифт** или __жирный шрифт__"
-
-#: skins/default/templates/answer_edit_tips.html:43
-#: skins/default/templates/question_edit_tips.html:40
-msgid "link"
-msgstr "ÑÑылка"
-
-#: skins/default/templates/answer_edit_tips.html:43
-#: skins/default/templates/answer_edit_tips.html:47
-#: skins/default/templates/question_edit_tips.html:40
-#: skins/default/templates/question_edit_tips.html:45
-msgid "text"
-msgstr "текÑÑ‚"
-
-#: skins/default/templates/answer_edit_tips.html:47
-#: skins/default/templates/question_edit_tips.html:45
-msgid "image"
-msgstr "изображение"
-
-#: skins/default/templates/answer_edit_tips.html:51
-#: skins/default/templates/question_edit_tips.html:49
-msgid "numbered list:"
-msgstr "пронумерованный ÑпиÑок:"
-
-#: skins/default/templates/answer_edit_tips.html:56
-#: skins/default/templates/question_edit_tips.html:54
-msgid "basic HTML tags are also supported"
-msgstr "а также, поддерживаютÑÑ Ð¾Ñновные теги HTML"
-
-#: skins/default/templates/answer_edit_tips.html:60
-#: skins/default/templates/question_edit_tips.html:58
-msgid "learn more about Markdown"
-msgstr "узнайте болше про Markdown"
-
-#: skins/default/templates/ask.html:3
+#: skins/default/templates/ask.html:4
msgid "Ask a question"
msgstr "СпроÑить"
-#: skins/default/templates/ask_form.html:7
-msgid "login to post question info"
-msgstr ""
-"<span class=\"strong big\">ПожалуйÑта, начните задавать Ваш Ð²Ð¾Ñ€Ð¿Ð¾Ñ Ð°Ð½Ð¾Ð½Ð¸Ð¼Ð½Ð¾</"
-"span>. Когда Ð’Ñ‹ пошлете вопроÑ, Ð’Ñ‹ будете направлены на Ñтраницу "
-"авторизации. Ваш Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð±ÑƒÐ´ÐµÑ‚ Ñохранён в текущей ÑеÑÑии и будет опубликован "
-"как только Ð’Ñ‹ авторизуетеÑÑŒ. Войти или запиÑатьÑÑ Ð½Ð° наш форум очень легко. "
-"ÐÐ²Ñ‚Ð¾Ñ€Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð·Ð°Ð¹Ð¼ÐµÑ‚ не более полминуты а Ð¸Ð·Ð½Ð°Ñ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ - приблизительно "
-"одну минуту."
-
-#: skins/default/templates/ask_form.html:11
-#, python-format
-msgid ""
-"must have valid %(email)s to post, \n"
-" see %(email_validation_faq_url)s\n"
-" "
-msgstr ""
-"Ð´Ð»Ñ Ð¿ÑƒÐ±Ð»Ð¸ÐºÐ°Ñ†Ð¸Ð¸ %(email)s должен быть дейÑтвительным, Ñм. %"
-"(email_validation_faq_url)s"
-
-#: skins/default/templates/ask_form.html:27
-msgid "Login/signup to post your question"
-msgstr "Войдите или запишитеÑÑŒ чтобы опубликовать Ваш ворпоÑ"
-
-#: skins/default/templates/ask_form.html:29
-msgid "Ask your question"
-msgstr "Задайте Ваш вопроÑ"
-
-#: skins/default/templates/badge.html:4 skins/default/templates/badge.html:11
-#: skins/default/templates/user_recent.html:13
-#: skins/default/templates/user_stats.html:88
+#: skins/default/templates/badge.html:4 skins/default/templates/badge.html:8
+#: skins/default/templates/user_profile/user_recent.html:16
+#: skins/default/templates/user_profile/user_stats.html:106
#, python-format
msgid "%(name)s"
msgstr "%(name)s"
-#: skins/default/templates/badge.html:4 skins/default/templates/badge.html:7
+#: skins/default/templates/badge.html:4
msgid "Badge"
msgstr "Ðаграда"
-#: skins/default/templates/badge.html:11
-#: skins/default/templates/user_recent.html:13
-#: skins/default/templates/user_stats.html:88
+#: skins/default/templates/badge.html:6
+#, fuzzy, python-format
+msgid "Badge \"%(name)s\""
+msgstr "%(name)s"
+
+#: skins/default/templates/badge.html:8
+#: skins/default/templates/user_profile/user_recent.html:16
+#: skins/default/templates/user_profile/user_stats.html:106
#, python-format
msgid "%(description)s"
msgstr "%(description)s"
-#: skins/default/templates/badge.html:16
+#: skins/default/templates/badge.html:13
msgid "user received this badge:"
msgid_plural "users received this badge:"
msgstr[0] "пользователь, получивший Ñтот значок"
@@ -3026,108 +3324,83 @@ msgstr[2] "пользователей, получивших Ñтот значоÐ
msgid "Badges summary"
msgstr "Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ знаках Ð¾Ñ‚Ð»Ð¸Ñ‡Ð¸Ñ (наградах)"
-#: skins/default/templates/badges.html:6
+#: skins/default/templates/badges.html:5
msgid "Badges"
msgstr "Значки"
-#: skins/default/templates/badges.html:10
+#: skins/default/templates/badges.html:7
msgid "Community gives you awards for your questions, answers and votes."
msgstr "Ðаграды"
-#: skins/default/templates/badges.html:11
-#, python-format
+#: skins/default/templates/badges.html:8
+#, fuzzy, 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 %"
+"of times each type of badge has been awarded. Give us feedback at %"
"(feedback_faq_url)s.\n"
-" "
msgstr ""
"Ðиже приведен ÑпиÑок доÑтупных значков и чиÑло награждений каждым из них. "
"ÐŸÑ€ÐµÐ´Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¾ новым значкам отправлÑйте через обратную ÑвÑзь - %"
"(feedback_faq_url)s."
-#: skins/default/templates/badges.html:40
+#: skins/default/templates/badges.html:35
msgid "Community badges"
msgstr "Значки Ð¾Ñ‚Ð»Ð¸Ñ‡Ð¸Ñ ÑообщеÑтва"
-#: skins/default/templates/badges.html:43
+#: skins/default/templates/badges.html:37
msgid "gold badge: the highest honor and is very rare"
msgstr "Ð·Ð¾Ð»Ð¾Ñ‚Ð°Ñ Ð¼ÐµÐ´Ð°Ð»ÑŒ: выÑÐ¾ÐºÐ°Ñ Ñ‡ÐµÑÑ‚ÑŒ и очень Ñ€ÐµÐ´ÐºÐ°Ñ Ð½Ð°Ð³Ñ€Ð°Ð´Ð°"
-#: skins/default/templates/badges.html:46
+#: skins/default/templates/badges.html:40
msgid "gold badge description"
msgstr "золотой значок"
-#: skins/default/templates/badges.html:51
+#: skins/default/templates/badges.html:45
msgid ""
"silver badge: occasionally awarded for the very high quality contributions"
msgstr "ÑеребрÑÐ½Ð°Ñ Ð¼ÐµÐ´Ð°Ð»ÑŒ: иногда приÑуждаетÑÑ Ð·Ð° большой вклад"
-#: skins/default/templates/badges.html:55
+#: skins/default/templates/badges.html:49
msgid "silver badge description"
msgstr "ÑеребрÑный значок"
-#: skins/default/templates/badges.html:58
+#: skins/default/templates/badges.html:52
msgid "bronze badge: often given as a special honor"
msgstr "бронзовый значок: чаÑто даётÑÑ ÐºÐ°Ðº оÑÐ¾Ð±Ð°Ñ Ð·Ð°Ñлуга"
-#: skins/default/templates/badges.html:62
+#: skins/default/templates/badges.html:56
msgid "bronze badge description"
msgstr "бронзовый значок - опиÑание"
-#: skins/default/templates/close.html:3 skins/default/templates/close.html:6
+#: skins/default/templates/close.html:3 skins/default/templates/close.html:5
msgid "Close question"
msgstr "Закрыть вопроÑ"
-#: skins/default/templates/close.html:9
+#: skins/default/templates/close.html:6
msgid "Close the question"
msgstr "Закрыть вопроÑ"
-#: skins/default/templates/close.html:14
+#: skins/default/templates/close.html:11
msgid "Reasons"
msgstr "Причины"
-#: skins/default/templates/close.html:18
+#: skins/default/templates/close.html:15
msgid "OK to close"
msgstr "OK, чтобы закрыть"
-#: skins/default/templates/editor_data.html:5
-#, python-format
-msgid "each tag must be shorter that %(max_chars)s character"
-msgid_plural "each tag must be shorter than %(max_chars)s characters"
-msgstr[0] "каждый тег должен быть короче %(max_chars)s Ñимвола"
-msgstr[1] "каждый тег должно быть короче чем %(max_chars)s Ñимвола"
-msgstr[2] "каждый тег должно быть короче чем %(max_chars)s Ñимволов"
-
-#: skins/default/templates/editor_data.html:7
-#, python-format
-msgid "please use %(tag_count)s tag"
-msgid_plural "please use %(tag_count)s tags or less"
-msgstr[0] "пожалуйÑта, иÑпользуйте %(tag_count)s тег"
-msgstr[1] "пожалуйÑта введите не более %(tag_count)s тегов"
-msgstr[2] "пожалуйÑта введите не более %(tag_count)s тегов"
-
-#: skins/default/templates/editor_data.html:8
-#, python-format
-msgid ""
-"please use up to %(tag_count)s tags, less than %(max_chars)s characters each"
-msgstr ""
-"пожалуйÑта, иÑпользуйте до %(tag_count)s тегов, количеÑтво Ñимволов в каждом "
-"менее %(max_chars)s"
-
-#: skins/default/templates/faq.html:3 skins/default/templates/faq.html.py:6
+#: skins/default/templates/faq.html:3 skins/default/templates/faq.html.py:5
msgid "FAQ"
msgstr "FAQ"
-#: skins/default/templates/faq.html:6
+#: skins/default/templates/faq.html:5
msgid "Frequently Asked Questions "
msgstr "ЧаÑто задаваемые вопроÑÑ‹"
-#: skins/default/templates/faq.html:11
+#: skins/default/templates/faq.html:6
msgid "What kinds of questions can I ask here?"
msgstr "Какие вопроÑÑ‹ Ñ Ð¼Ð¾Ð³Ñƒ задать здеÑÑŒ?"
-#: skins/default/templates/faq.html:12
+#: skins/default/templates/faq.html:7
msgid ""
"Most importanly - questions should be <strong>relevant</strong> to this "
"community."
@@ -3135,7 +3408,7 @@ msgstr ""
"Самое главное - вопроÑÑ‹ должны <strong>ÑоответÑтвовать теме</strong> "
"ÑообщеÑтва."
-#: skins/default/templates/faq.html:13
+#: skins/default/templates/faq.html:8
msgid ""
"Before asking the question - please make sure to use search to see whether "
"your question has alredy been answered."
@@ -3143,11 +3416,11 @@ msgstr ""
"Перед тем как задать Ð²Ð¾Ð¿Ñ€Ð¾Ñ - пожалуйÑта, не забудьте иÑпользовать поиÑк, "
"чтобы убедитьÑÑ, что ваш Ð²Ð¾Ð¿Ñ€Ð¾Ñ ÐµÑ‰Ðµ не имеет ответа."
-#: skins/default/templates/faq.html:15
+#: skins/default/templates/faq.html:10
msgid "What questions should I avoid asking?"
msgstr "Каких вопроÑов мне Ñледует избегать?"
-#: skins/default/templates/faq.html:16
+#: skins/default/templates/faq.html:11
msgid ""
"Please avoid asking questions that are not relevant to this community, too "
"subjective and argumentative."
@@ -3155,11 +3428,11 @@ msgstr ""
"ПроÑьба не задавать вопроÑÑ‹, которые не ÑоответÑтвуют теме Ñтого Ñайта, "
"Ñлишком Ñубъективны или очевидны."
-#: skins/default/templates/faq.html:20
+#: skins/default/templates/faq.html:13
msgid "What should I avoid in my answers?"
msgstr "Чего Ñ Ð´Ð¾Ð»Ð¶ÐµÐ½ избегать в Ñвоих ответах?"
-#: skins/default/templates/faq.html:21
+#: skins/default/templates/faq.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 "
@@ -3169,19 +3442,19 @@ msgstr ""
"пожалуйÑта, избегайте обÑÑƒÐ¶Ð´ÐµÐ½Ð¸Ñ Ð² Ñвоих ответах. Комментарии позволÑÑŽÑ‚ лишь "
"краткое обÑуждение."
-#: skins/default/templates/faq.html:24
+#: skins/default/templates/faq.html:15
msgid "Who moderates this community?"
msgstr "Кто модерирует Ñто ÑообщеÑтво?"
-#: skins/default/templates/faq.html:25
+#: skins/default/templates/faq.html:16
msgid "The short answer is: <strong>you</strong>."
msgstr "Ответ краток: <strong>вы.</strong>"
-#: skins/default/templates/faq.html:26
+#: skins/default/templates/faq.html:17
msgid "This website is moderated by the users."
msgstr "Этот Ñайт находитÑÑ Ð¿Ð¾Ð´ управлением Ñамих пользователей."
-#: skins/default/templates/faq.html:27
+#: skins/default/templates/faq.html:18
msgid ""
"The reputation system allows users earn the authorization to perform a "
"variety of moderation tasks."
@@ -3189,15 +3462,15 @@ msgstr ""
"СиÑтема репутации (кармы) позволÑет пользователÑм приобретать различные "
"управленчеÑкие права."
-#: skins/default/templates/faq.html:32
+#: skins/default/templates/faq.html:20
msgid "How does reputation system work?"
msgstr "Как работает карма?"
-#: skins/default/templates/faq.html:33
+#: skins/default/templates/faq.html:21
msgid "Rep system summary"
msgstr "Суть кармы"
-#: skins/default/templates/faq.html:34
+#: skins/default/templates/faq.html:22
#, python-format
msgid ""
"For example, if you ask an interesting question or give a helpful answer, "
@@ -3219,69 +3492,57 @@ msgstr ""
"за Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð¸Ð»Ð¸ ответ за день. Ð’ таблице ниже предÑтавлены вÑе Ñ‚Ñ€ÐµÐ±Ð¾Ð²Ð°Ð½Ð¸Ñ Ðº "
"карме Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ типа модерированиÑ."
-#: skins/default/templates/faq.html:44
-#: skins/default/templates/user_votes.html:10
+#: skins/default/templates/faq.html:32
+#: skins/default/templates/user_profile/user_votes.html:13
msgid "upvote"
msgstr "проголоÑовать \"за\""
-#: skins/default/templates/faq.html:49
+#: skins/default/templates/faq.html:37
msgid "use tags"
msgstr "иÑпользовать теги"
-#: skins/default/templates/faq.html:54
+#: skins/default/templates/faq.html:42
msgid "add comments"
msgstr "добавить комментарии"
-#: skins/default/templates/faq.html:58
-#: skins/default/templates/user_votes.html:12
+#: skins/default/templates/faq.html:46
+#: skins/default/templates/user_profile/user_votes.html:15
msgid "downvote"
msgstr "проголоÑовать \"против\""
-#: skins/default/templates/faq.html:61
+#: skins/default/templates/faq.html:49
msgid "open and close own questions"
msgstr "открывать и закрывать Ñвои вопроÑÑ‹"
-#: skins/default/templates/faq.html:65
+#: skins/default/templates/faq.html:53
msgid "retag other's questions"
msgstr "изменÑÑ‚ÑŒ теги других вопроÑов"
-#: skins/default/templates/faq.html:70
+#: skins/default/templates/faq.html:58
msgid "edit community wiki questions"
msgstr "редактировать вопроÑÑ‹ в вики ÑообщеÑтва "
-#: skins/default/templates/faq.html:75
+#: skins/default/templates/faq.html:63
msgid "\"edit any answer"
msgstr "редактировать любой ответ"
-#: skins/default/templates/faq.html:79
+#: skins/default/templates/faq.html:67
msgid "\"delete any comment"
msgstr "удалÑÑ‚ÑŒ любые комментарии"
-#: skins/default/templates/faq.html:86
-msgid "how to validate email title"
-msgstr "как проверить заголовок Ñлектронного ÑообщениÑ"
-
-#: skins/default/templates/faq.html:88
-#, python-format
-msgid ""
-"how to validate email info with %(send_email_key_url)s %(gravatar_faq_url)s"
-msgstr ""
-"как проверить Ñлектронную почту Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ %(send_email_key_url)s %"
-"(gravatar_faq_url)s"
-
-#: skins/default/templates/faq.html:93
+#: skins/default/templates/faq.html:70
msgid "what is gravatar"
msgstr "что такое Gravatar"
-#: skins/default/templates/faq.html:94
+#: skins/default/templates/faq.html:71
msgid "gravatar faq info"
msgstr "gravatar FAQ"
-#: skins/default/templates/faq.html:97
+#: skins/default/templates/faq.html:72
msgid "To register, do I need to create new password?"
msgstr "Ðеобходимо ли Ñоздавать новый пароль, чтобы зарегиÑтрироватьÑÑ?"
-#: skins/default/templates/faq.html:98
+#: skins/default/templates/faq.html:73
msgid ""
"No, you don't have to. You can login through any service that supports "
"OpenID, e.g. Google, Yahoo, AOL, etc.\""
@@ -3289,19 +3550,19 @@ msgstr ""
"Ðет, Ñтого делать нет необходимоÑти. Ð’Ñ‹ можете Войти через любой ÑервиÑ, "
"который поддерживает OpenID, например, Google, Yahoo, AOL и т.д."
-#: skins/default/templates/faq.html:99
+#: skins/default/templates/faq.html:74
msgid "\"Login now!\""
msgstr "Войти ÑейчаÑ!"
-#: skins/default/templates/faq.html:103
+#: skins/default/templates/faq.html:76
msgid "Why other people can edit my questions/answers?"
msgstr "Почему другие люди могут изменÑÑ‚ÑŒ мои вопроÑÑ‹ / ответы?"
-#: skins/default/templates/faq.html:104
+#: skins/default/templates/faq.html:77
msgid "Goal of this site is..."
msgstr "Цель Ñтого Ñайта ..."
-#: skins/default/templates/faq.html:104
+#: skins/default/templates/faq.html:77
msgid ""
"So questions and answers can be edited like wiki pages by experienced users "
"of this site and this improves the overall quality of the knowledge base "
@@ -3311,15 +3572,15 @@ msgstr ""
"ответы как Ñтраницы вики, что в Ñвою очередь улучшает качеÑтво ÑÐ¾Ð´ÐµÑ€Ð¶Ð°Ð½Ð¸Ñ "
"базы данных вопроÑов/ответов."
-#: skins/default/templates/faq.html:105
+#: skins/default/templates/faq.html:78
msgid "If this approach is not for you, we respect your choice."
msgstr "ЕÑли Ñтот подход не Ð´Ð»Ñ Ð²Ð°Ñ, мы уважаем ваш выбор."
-#: skins/default/templates/faq.html:109
+#: skins/default/templates/faq.html:80
msgid "Still have questions?"
msgstr "ОÑталиÑÑŒ вопроÑÑ‹?"
-#: skins/default/templates/faq.html:110
+#: skins/default/templates/faq.html:81
#, python-format
msgid ""
"Please ask your question at %(ask_question_url)s, help make our community "
@@ -3328,57 +3589,50 @@ msgstr ""
"Задайте Ñвой Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð² %(ask_question_url)s, помогите Ñделать наше ÑообщеÑтво "
"лучше!"
-#: skins/default/templates/faq.html:112 skins/default/templates/header.html:26
-msgid "questions"
-msgstr "вопроÑÑ‹"
-
-#: skins/default/templates/faq.html:112
-msgid "."
-msgstr "."
-
#: skins/default/templates/feedback.html:3
msgid "Feedback"
msgstr "ÐžÐ±Ñ€Ð°Ñ‚Ð½Ð°Ñ ÑвÑзь"
-#: skins/default/templates/feedback.html:6
+#: skins/default/templates/feedback.html:5
msgid "Give us your feedback!"
msgstr "Ð’Ñ‹Ñкажите Ñвое мнение!"
-#: skins/default/templates/feedback.html:12
-#, python-format
+#: skins/default/templates/feedback.html:9
+#, fuzzy, python-format
msgid ""
"\n"
-" <span class='big strong'>Dear %(user_name)s</span>, we look "
-"forward to hearing your feedback. \n"
-" Please type and send us your message below.\n"
-" "
+" <span class='big strong'>Dear %(user_name)s</span>, we look forward "
+"to hearing your feedback. \n"
+" Please type and send us your message below.\n"
+" "
msgstr ""
"\n"
"<span class='big strong'>Уважаемый %(user_name)s,</span> мы Ñ Ð½ÐµÑ‚ÐµÑ€Ð¿ÐµÐ½Ð¸ÐµÐ¼ "
"ждем ваших отзывов. \n"
"ПожалуйÑта, укажите и отправьте нам Ñвое Ñообщение ниже."
-#: skins/default/templates/feedback.html:19
+#: skins/default/templates/feedback.html:16
+#, fuzzy
msgid ""
"\n"
-" <span class='big strong'>Dear visitor</span>, we look forward to "
+" <span class='big strong'>Dear visitor</span>, we look forward to "
"hearing your feedback.\n"
-" Please type and send us your message below.\n"
-" "
+" Please type and send us your message below.\n"
+" "
msgstr ""
"\n"
"<span class='big strong'>Уважаемый поÑетитель</span>, мы Ñ Ð½ÐµÑ‚ÐµÑ€Ð¿ÐµÐ½Ð¸ÐµÐ¼ ждем "
"ваших отзывов. ПожалуйÑта, введите и отправить нам Ñвое Ñообщение ниже."
-#: skins/default/templates/feedback.html:28
+#: skins/default/templates/feedback.html:25
msgid "(please enter a valid email)"
msgstr "(пожалуйÑта, введите правильный Ð°Ð´Ñ€ÐµÑ Ñлектронной почты)"
-#: skins/default/templates/feedback.html:36
+#: skins/default/templates/feedback.html:33
msgid "(this field is required)"
msgstr "(Ñто поле обÑзательно)"
-#: skins/default/templates/feedback.html:44
+#: skins/default/templates/feedback.html:41
msgid "Send Feedback"
msgstr "Отправить отзыв"
@@ -3408,43 +3662,35 @@ msgstr "анонимный"
msgid "Message body:"
msgstr "ТекÑÑ‚ ÑообщениÑ:"
-#: skins/default/templates/footer.html:5
-#: skins/default/templates/blocks/header_meta_links.html:51
-msgid "about"
-msgstr "о наÑ"
-
-#: skins/default/templates/footer.html:7
-msgid "privacy policy"
-msgstr "политика конфиденциальноÑти"
-
-#: skins/default/templates/footer.html:16
-msgid "give feedback"
-msgstr "оÑтавить отзыв"
-
-#: skins/default/templates/header.html:15
-msgid "back to home page"
-msgstr "вернутьÑÑ Ð½Ð° главную"
-
-#: skins/default/templates/header.html:16
-#, python-format
-msgid "%(site)s logo"
-msgstr "логотип %(site)s"
+#: skins/default/templates/import_data.html:2
+#: skins/default/templates/import_data.html:4
+msgid "Import StackExchange data"
+msgstr ""
-#: skins/default/templates/header.html:36
-msgid "users"
-msgstr "пользователи"
+#: skins/default/templates/import_data.html:13
+msgid ""
+"<em>Warning:</em> if your database is not empty, please back it up\n"
+" before attempting this operation."
+msgstr ""
-#: skins/default/templates/header.html:41
-msgid "badges"
-msgstr "награды"
+#: skins/default/templates/import_data.html:16
+msgid ""
+"Upload your stackexchange dump .zip file, then wait until\n"
+" the data import completes. This process may take several minutes.\n"
+" Please note that feedback will be printed in plain text.\n"
+" "
+msgstr ""
-#: skins/default/templates/header.html:46
-msgid "ask a question"
-msgstr "задать вопроÑ"
+#: skins/default/templates/import_data.html:25
+msgid "Import data"
+msgstr ""
-#: skins/default/templates/input_bar.html:32
-msgid "search"
-msgstr "поиÑк"
+#: skins/default/templates/import_data.html:27
+msgid ""
+"In the case you experience any difficulties in using this import tool,\n"
+" please try importing your data via command line: <code>python manage."
+"py load_stackexchange path/to/your-data.zip</code>"
+msgstr ""
#: skins/default/templates/instant_notification.html:1
#, python-format
@@ -3538,21 +3784,19 @@ msgstr ""
msgid "<p>Sincerely,<br/>Forum Administrator</p>"
msgstr "<p>С уважением,<br/>ÐдминиÑÑ‚Ñ€Ð°Ñ†Ð¸Ñ Ð¤Ð¾Ñ€ÑƒÐ¼Ð°</p>"
-#: skins/default/templates/logout.html:3 skins/default/templates/logout.html:6
+#: skins/default/templates/logout.html:3
msgid "Logout"
msgstr "Выйти"
-#: skins/default/templates/logout.html:9
-msgid ""
-"As a registered user you can login with your OpenID, log out of the site or "
-"permanently remove your account."
+#: skins/default/templates/logout.html:5
+msgid "You have successfully logged out"
msgstr ""
-"Как зарегиÑтрированный пользователь Ð’Ñ‹ можете Войти Ñ OpenID, выйти из Ñайта "
-"или удалить Ñвой аккаунт."
-#: skins/default/templates/logout.html:10
-msgid "Logout now"
-msgstr "Выйти ÑейчаÑ"
+#: skins/default/templates/logout.html:6
+msgid ""
+"However, you still may be logged in to your OpenID provider. Please logout "
+"of your provider if you wish to do so."
+msgstr ""
#: skins/default/templates/macros.html:26
msgid "karma:"
@@ -3562,39 +3806,49 @@ msgstr "карма:"
msgid "badges:"
msgstr "награды"
-#: skins/default/templates/macros.html:52
-#: skins/default/templates/macros.html:53
+#: skins/default/templates/macros.html:82
+#: skins/default/templates/macros.html:83
msgid "previous"
msgstr "предыдущаÑ"
-#: skins/default/templates/macros.html:64
+#: skins/default/templates/macros.html:94
msgid "current page"
msgstr "Ñ‚ÐµÐºÑƒÑ‰Ð°Ñ Ñтраница"
-#: skins/default/templates/macros.html:66
-#: skins/default/templates/macros.html:73
+#: skins/default/templates/macros.html:96
+#: skins/default/templates/macros.html:103
#, python-format
msgid "page number %(num)s"
msgstr "Ñтраница номер %(num)s"
-#: skins/default/templates/macros.html:77
+#: skins/default/templates/macros.html:107
msgid "next page"
msgstr "ÑÐ»ÐµÐ´ÑƒÑŽÑ‰Ð°Ñ Ñтраница"
-#: skins/default/templates/macros.html:88
+#: skins/default/templates/macros.html:118
msgid "posts per page"
msgstr "Ñообщений на Ñтранице"
-#: skins/default/templates/macros.html:119 templatetags/extra_tags.py:44
+#: skins/default/templates/macros.html:150 templatetags/extra_tags.py:43
#, python-format
msgid "%(username)s gravatar image"
msgstr "%(username)s Gravatar"
-#: skins/default/templates/macros.html:142
+#: skins/default/templates/macros.html:159
+#, fuzzy, python-format
+msgid "%(username)s's website is %(url)s"
+msgstr "пользователь %(username)s имеет ÑÑ‚Ð°Ñ‚ÑƒÑ \"%(status)s\""
+
+#: skins/default/templates/macros.html:171
+#, fuzzy
+msgid "anonymous user"
+msgstr "анонимный"
+
+#: skins/default/templates/macros.html:199
msgid "this post is marked as community wiki"
msgstr "поÑÑ‚ отмечен как вики ÑообщеÑтва"
-#: skins/default/templates/macros.html:145
+#: skins/default/templates/macros.html:202
#, python-format
msgid ""
"This post is a wiki.\n"
@@ -3602,74 +3856,66 @@ msgid ""
msgstr ""
"Этот поÑÑ‚ - вики. Любой Ñ ÐºÐ°Ñ€Ð¼Ð¾Ð¹ &gt;%(wiki_min_rep)s может улучшить его."
-#: skins/default/templates/macros.html:151
+#: skins/default/templates/macros.html:208
msgid "asked"
msgstr "ÑпроÑил"
-#: skins/default/templates/macros.html:153
+#: skins/default/templates/macros.html:210
msgid "answered"
msgstr "ответил"
-#: skins/default/templates/macros.html:155
+#: skins/default/templates/macros.html:212
msgid "posted"
msgstr "опубликовал"
-#: skins/default/templates/macros.html:185
+#: skins/default/templates/macros.html:242
msgid "updated"
msgstr "обновил"
-#: skins/default/templates/macros.html:210
-#: skins/default/templates/unused/questions_ajax.html:23 views/readers.py:238
+#: skins/default/templates/macros.html:309
+#, python-format
+msgid "see questions tagged '%(tag)s'"
+msgstr "Ñмотри вопроÑÑ‹ Ñ Ñ‚ÐµÐ³Ð°Ð¼Ð¸ '%(tag)s'"
+
+#: skins/default/templates/macros.html:352 views/readers.py:220
msgid "vote"
msgid_plural "votes"
msgstr[0] "голоÑ"
msgstr[1] "голоÑа"
msgstr[2] "голоÑов"
-#: skins/default/templates/macros.html:227
-#: skins/default/templates/unused/questions_ajax.html:43 views/readers.py:241
+#: skins/default/templates/macros.html:369 views/readers.py:223
msgid "answer"
msgid_plural "answers"
msgstr[0] "ответ"
msgstr[1] "ответа"
msgstr[2] "ответов"
-#: skins/default/templates/macros.html:239
-#: skins/default/templates/unused/questions_ajax.html:55 views/readers.py:244
+#: skins/default/templates/macros.html:380 views/readers.py:226
msgid "view"
msgid_plural "views"
msgstr[0] "проÑмотр"
msgstr[1] "проÑмотра"
msgstr[2] "проÑмотров"
-#: skins/default/templates/macros.html:251
-#: skins/default/templates/question.html:88
-#: skins/default/templates/tags.html:38
-#: skins/default/templates/unused/question_list.html:64
-#: skins/default/templates/unused/question_summary_list_roll.html:52
-#: skins/default/templates/unused/questions_ajax.html:68
-#, python-format
-msgid "see questions tagged '%(tag)s'"
-msgstr "Ñмотри вопроÑÑ‹ Ñ Ñ‚ÐµÐ³Ð°Ð¼Ð¸ '%(tag)s'"
-
-#: skins/default/templates/macros.html:267
-#: skins/default/templates/question.html:94
-#: skins/default/templates/question.html:250
+#: skins/default/templates/macros.html:409
+#: skins/default/templates/question.html:92
+#: skins/default/templates/question.html:248
#: skins/default/templates/revisions.html:37
msgid "edit"
msgstr "редактировать"
-#: skins/default/templates/macros.html:272
+#: skins/default/templates/macros.html:413
msgid "delete this comment"
msgstr "удалить Ñтот комментарий"
-#: skins/default/templates/macros.html:290
-#: skins/default/templates/macros.html:298
-#: skins/default/templates/question.html:432
+#: skins/default/templates/macros.html:431
+#: skins/default/templates/macros.html:439
+#: skins/default/templates/question.html:437
msgid "add comment"
msgstr "добавить комментарий"
-#: skins/default/templates/macros.html:291
+#: skins/default/templates/macros.html:432
#, python-format
msgid "see <strong>%(counter)s</strong> more"
msgid_plural "see <strong>%(counter)s</strong> more"
@@ -3677,7 +3923,7 @@ msgstr[0] "Ñмотреть еще <strong>один</strong>"
msgstr[1] "Ñмотреть еще <strong>%(counter)s</strong>"
msgstr[2] "Ñмотреть еще <strong>%(counter)s</strong>"
-#: skins/default/templates/macros.html:293
+#: skins/default/templates/macros.html:434
#, python-format
msgid "see <strong>%(counter)s</strong> more comment"
msgid_plural ""
@@ -3687,114 +3933,153 @@ msgstr[0] "Ñмотреть еще <strong>один</strong> комментарÐ
msgstr[1] "Ñмотреть еще <strong>%(counter)s</strong> комментариÑ"
msgstr[2] "Ñмотреть еще <strong>%(counter)s</strong> комментариев"
-#: skins/default/templates/macros.html:422
+#: skins/default/templates/macros.html:569
msgid "(required)"
msgstr "(обÑзательно)"
-#: skins/default/templates/macros.html:443
+#: skins/default/templates/macros.html:590
msgid "Toggle the real time Markdown editor preview"
msgstr "Включить/выключить предварительный проÑмотр текÑта"
+#: skins/default/templates/macros.html:602
+#, python-format
+msgid "responses for %(username)s"
+msgstr "ответы пользователю %(username)s"
+
+#: skins/default/templates/macros.html:605
+#, fuzzy, python-format
+msgid "you have a new response"
+msgid_plural "you have %(response_count)s new responses"
+msgstr[0] "У Ð²Ð°Ñ Ð½Ð¾Ð²Ñ‹Ð¹ ответ"
+msgstr[1] "У Ð²Ð°Ñ %(response_count)s новых ответов"
+msgstr[2] "У Ð²Ð°Ñ %(response_count)s новых ответов"
+
+#: skins/default/templates/macros.html:608
+msgid "no new responses yet"
+msgstr "новых ответов нет"
+
+#: skins/default/templates/macros.html:623
+#: skins/default/templates/macros.html:624
+#, python-format
+msgid "%(new)s new flagged posts and %(seen)s previous"
+msgstr "%(new)s новых поÑтов Ñо Ñпамом и %(seen)s предыдущих"
+
+#: skins/default/templates/macros.html:626
+#: skins/default/templates/macros.html:627
+#, python-format
+msgid "%(new)s new flagged posts"
+msgstr "%(new)s новых неумеÑтных Ñообщений"
+
+#: skins/default/templates/macros.html:632
+#: skins/default/templates/macros.html:633
+#, python-format
+msgid "%(seen)s flagged posts"
+msgstr "%(seen)s неумеÑтных Ñообщений"
+
+#: skins/default/templates/main_page.html:11
+msgid "Questions"
+msgstr "ВопроÑÑ‹"
+
#: skins/default/templates/privacy.html:3
-#: skins/default/templates/privacy.html:6
+#: skins/default/templates/privacy.html:5
msgid "Privacy policy"
msgstr "КонфиденциальноÑÑ‚ÑŒ"
-#: skins/default/templates/question.html:30
-#: skins/default/templates/question.html:31
-#: skins/default/templates/question.html:46
-#: skins/default/templates/question.html:48
+#: skins/default/templates/question.html:26
+#: skins/default/templates/question.html:27
+#: skins/default/templates/question.html:42
+#: skins/default/templates/question.html:44
msgid "i like this post (click again to cancel)"
msgstr "мне понравилÑÑ Ñтот поÑÑ‚ (щелкните Ñнова, чтобы отменить)"
-#: skins/default/templates/question.html:33
-#: skins/default/templates/question.html:50
-#: skins/default/templates/question.html:201
+#: skins/default/templates/question.html:29
+#: skins/default/templates/question.html:46
+#: skins/default/templates/question.html:199
msgid "current number of votes"
msgstr "текущее чиÑло голоÑов"
-#: skins/default/templates/question.html:42
-#: skins/default/templates/question.html:43
-#: skins/default/templates/question.html:55
-#: skins/default/templates/question.html:56
+#: skins/default/templates/question.html:38
+#: skins/default/templates/question.html:39
+#: skins/default/templates/question.html:51
+#: skins/default/templates/question.html:52
msgid "i dont like this post (click again to cancel)"
msgstr "мне не понравилÑÑ Ñтот поÑÑ‚ (нажмите еще раз Ð´Ð»Ñ Ð¾Ñ‚Ð¼ÐµÐ½Ñ‹)"
-#: skins/default/templates/question.html:60
-#: skins/default/templates/question.html:61
+#: skins/default/templates/question.html:56
+#: skins/default/templates/question.html:57
msgid "mark this question as favorite (click again to cancel)"
msgstr "добавить в закладки (чтобы отменить - отметьте еще раз)"
-#: skins/default/templates/question.html:67
-#: skins/default/templates/question.html:68
+#: skins/default/templates/question.html:63
+#: skins/default/templates/question.html:64
msgid "remove favorite mark from this question (click again to restore mark)"
msgstr "удалить из закладок (еще раз - чтобы воÑÑтановить)"
-#: skins/default/templates/question.html:74
+#: skins/default/templates/question.html:70
msgid "Share this question on twitter"
msgstr "ПоделитьÑÑ Ð²Ð¾Ð¿Ñ€Ð¾Ñом на Twitter"
-#: skins/default/templates/question.html:75
+#: skins/default/templates/question.html:71
msgid "Share this question on facebook"
msgstr "ПоделитьÑÑ Ð²Ð¾Ð¿Ñ€Ð¾Ñом на Facebook"
-#: skins/default/templates/question.html:97
+#: skins/default/templates/question.html:95
msgid "retag"
msgstr "изменить тег"
-#: skins/default/templates/question.html:104
+#: skins/default/templates/question.html:102
msgid "reopen"
msgstr "переоткрыть"
-#: skins/default/templates/question.html:108
+#: skins/default/templates/question.html:106
msgid "close"
msgstr "закрыть"
-#: skins/default/templates/question.html:113
-#: skins/default/templates/question.html:254
+#: skins/default/templates/question.html:111
+#: skins/default/templates/question.html:252
msgid ""
"report as offensive (i.e containing spam, advertising, malicious text, etc.)"
msgstr ""
"Ñообщить о Ñпаме (Ñ‚.е. ÑообщениÑÑ… Ñодержащих Ñпам, рекламу, вредоноÑные "
"ÑÑылки и Ñ‚.д.)"
-#: skins/default/templates/question.html:114
-#: skins/default/templates/question.html:255
+#: skins/default/templates/question.html:112
+#: skins/default/templates/question.html:253
msgid "flag offensive"
msgstr "Ñпам"
-#: skins/default/templates/question.html:121
-#: skins/default/templates/question.html:265
+#: skins/default/templates/question.html:119
+#: skins/default/templates/question.html:263
msgid "undelete"
msgstr "воÑÑтановить"
-#: skins/default/templates/question.html:121
-#: skins/default/templates/question.html:265
-#: skins/default/templates/authopenid/signin.html:175
+#: skins/default/templates/question.html:119
+#: skins/default/templates/question.html:263
+#: skins/default/templates/authopenid/signin.html:155
msgid "delete"
msgstr "удалить"
-#: skins/default/templates/question.html:159
+#: skins/default/templates/question.html:156
#, python-format
msgid ""
"The question has been closed for the following reason \"%(close_reason)s\" by"
msgstr "Ð’Ð¾Ð¿Ñ€Ð¾Ñ Ð±Ñ‹Ð» закрыт по Ñледующим причинам \"%(close_reason)s\", автор:"
-#: skins/default/templates/question.html:161
+#: skins/default/templates/question.html:158
#, python-format
msgid "close date %(closed_at)s"
msgstr "дата закрытиÑ: %(closed_at)s"
-#: skins/default/templates/question.html:169
-#, python-format
+#: skins/default/templates/question.html:164
+#, fuzzy, python-format
msgid ""
"\n"
-" %(counter)s Answer:\n"
-" "
+" %(counter)s Answer:\n"
+" "
msgid_plural ""
"\n"
-" %(counter)s Answers:\n"
-" "
+" %(counter)s Answers:\n"
+" "
msgstr[0] ""
"\n"
"Один ответ:\n"
@@ -3806,73 +4091,73 @@ msgstr[2] ""
"\n"
"%(counter)s Ответов:"
-#: skins/default/templates/question.html:177
+#: skins/default/templates/question.html:172
msgid "oldest answers will be shown first"
msgstr "Ñамые Ñтарые ответы будут показаны первыми"
-#: skins/default/templates/question.html:177
+#: skins/default/templates/question.html:173
msgid "oldest answers"
msgstr "Ñамые Ñтарые ответы"
-#: skins/default/templates/question.html:179
+#: skins/default/templates/question.html:175
msgid "newest answers will be shown first"
msgstr "Ñамые новые ответы будут показаны первыми"
-#: skins/default/templates/question.html:179
+#: skins/default/templates/question.html:176
msgid "newest answers"
msgstr "Ñамые новые ответы"
-#: skins/default/templates/question.html:181
+#: skins/default/templates/question.html:178
msgid "most voted answers will be shown first"
msgstr "ответы Ñ Ð±<b>о</b>льшим чиÑлом голоÑов будут показаны первыми"
-#: skins/default/templates/question.html:181
+#: skins/default/templates/question.html:179
msgid "popular answers"
msgstr "популÑрные ответы"
-#: skins/default/templates/question.html:199
-#: skins/default/templates/question.html:200
+#: skins/default/templates/question.html:197
+#: skins/default/templates/question.html:198
msgid "i like this answer (click again to cancel)"
msgstr "мне нравитÑÑ Ñтот ответ (нажмите еще раз Ð´Ð»Ñ Ð¾Ñ‚Ð¼ÐµÐ½Ñ‹)"
-#: skins/default/templates/question.html:210
-#: skins/default/templates/question.html:211
+#: skins/default/templates/question.html:208
+#: skins/default/templates/question.html:209
msgid "i dont like this answer (click again to cancel)"
msgstr "мне не нравитÑÑ Ñтот ответ (нажмите еще раз Ð´Ð»Ñ Ð¾Ñ‚Ð¼ÐµÐ½Ñ‹)"
-#: skins/default/templates/question.html:219
-#: skins/default/templates/question.html:220
+#: skins/default/templates/question.html:217
+#: skins/default/templates/question.html:218
msgid "mark this answer as favorite (click again to undo)"
msgstr "отметить Ñтот Ð²Ð¾Ð¿Ñ€Ð¾Ñ ÐºÐ°Ðº интереÑный (еще раз - чтобы удалить закладку)"
-#: skins/default/templates/question.html:229
-#: skins/default/templates/question.html:230
+#: skins/default/templates/question.html:227
+#: skins/default/templates/question.html:228
#, python-format
msgid "%(question_author)s has selected this answer as correct"
msgstr "автор вопроÑа %(question_author)s выбрал Ñтот ответ правильным"
-#: skins/default/templates/question.html:245
+#: skins/default/templates/question.html:243
msgid "answer permanent link"
msgstr "поÑтоÑÐ½Ð½Ð°Ñ ÑÑылка на ответ"
-#: skins/default/templates/question.html:246
+#: skins/default/templates/question.html:244
msgid "permanent link"
msgstr "поÑтоÑÐ½Ð½Ð°Ñ ÑÑылка"
+#: skins/default/templates/question.html:313
#: skins/default/templates/question.html:315
-#: skins/default/templates/question.html:317
msgid "Notify me once a day when there are any new answers"
msgstr "Информировать один раз в день, еÑли еÑÑ‚ÑŒ новые ответы"
-#: skins/default/templates/question.html:319
+#: skins/default/templates/question.html:317
msgid "Notify me weekly when there are any new answers"
msgstr "Еженедельно информировать о новых ответах"
-#: skins/default/templates/question.html:321
+#: skins/default/templates/question.html:319
msgid "Notify me immediately when there are any new answers"
msgstr "Информировать о новых ответах Ñразу"
-#: skins/default/templates/question.html:324
+#: skins/default/templates/question.html:322
#, python-format
msgid ""
"You can always adjust frequency of email updates from your %(profile_url)s"
@@ -3880,310 +4165,126 @@ msgstr ""
"(в Ñвоем профиле, вы можете наÑтроить чаÑтоту оповещений по Ñлектронной "
"почте, нажав на кнопку \"подпиÑка по e-mail\" - %(profile_url)s)"
-#: skins/default/templates/question.html:329
+#: skins/default/templates/question.html:327
msgid "once you sign in you will be able to subscribe for any updates here"
msgstr "ПоÑле входа в ÑиÑтему вы Ñможете подпиÑатьÑÑ Ð½Ð° вÑе обновлениÑ"
-#: skins/default/templates/question.html:339
+#: skins/default/templates/question.html:337
msgid "Your answer"
msgstr "Ваш ответ"
-#: skins/default/templates/question.html:341
+#: skins/default/templates/question.html:339
msgid "Be the first one to answer this question!"
msgstr "Будьте первым, кто ответ на Ñтот вопроÑ!"
-#: skins/default/templates/question.html:347
+#: skins/default/templates/question.html:345
msgid "you can answer anonymously and then login"
msgstr "Вы можете ответить анонимно, а затем войти"
-#: skins/default/templates/question.html:351
+#: skins/default/templates/question.html:349
msgid "answer your own question only to give an answer"
msgstr "ответ на ÑобÑтвенный Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ ради ответа"
-#: skins/default/templates/question.html:353
+#: skins/default/templates/question.html:351
msgid "please only give an answer, no discussions"
msgstr "пожалуйÑта, отвечайте на вопроÑÑ‹, а не вÑтупайте в обÑуждениÑ"
-#: skins/default/templates/question.html:360
+#: skins/default/templates/question.html:358
msgid "Login/Signup to Post Your Answer"
msgstr "Войти / ЗарегиÑтрироватьÑÑ Ñ‡Ñ‚Ð¾Ð±Ñ‹ ответить"
-#: skins/default/templates/question.html:363
+#: skins/default/templates/question.html:361
msgid "Answer Your Own Question"
msgstr "Ответьте на ÑобÑтвенный вопроÑ"
-#: skins/default/templates/question.html:365
+#: skins/default/templates/question.html:363
msgid "Answer the question"
msgstr "Ответить на вопроÑ"
-#: skins/default/templates/question.html:379
+#: skins/default/templates/question.html:378
msgid "Question tags"
msgstr "Теги вопроÑа"
-#: skins/default/templates/question.html:384
-#: skins/default/templates/questions.html:224
-#: skins/default/templates/tag_selector.html:9
-#: skins/default/templates/tag_selector.html:26
-#, python-format
-msgid "see questions tagged '%(tag_name)s'"
-msgstr "Ñм. вопроÑÑ‹ Ñ Ñ‚ÐµÐ³Ð°Ð¼Ð¸ '%(tag_name)s'"
-
-#: skins/default/templates/question.html:390
+#: skins/default/templates/question.html:395
msgid "question asked"
msgstr "Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð±Ñ‹Ð» задан"
-#: skins/default/templates/question.html:393
+#: skins/default/templates/question.html:398
msgid "question was seen"
msgstr "Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð±Ñ‹Ð» проÑмотрен"
-#: skins/default/templates/question.html:393
+#: skins/default/templates/question.html:398
msgid "times"
msgstr "раз"
-#: skins/default/templates/question.html:396
+#: skins/default/templates/question.html:401
msgid "last updated"
msgstr "поÑледнее обновление"
-#: skins/default/templates/question.html:403
+#: skins/default/templates/question.html:408
msgid "Related questions"
msgstr "похожие вопроÑÑ‹:"
#: skins/default/templates/question_edit.html:4
-#: skins/default/templates/question_edit.html:10
+#: skins/default/templates/question_edit.html:9
msgid "Edit question"
msgstr "Изменить вопроÑ"
-#: skins/default/templates/question_edit_tips.html:3
-msgid "question tips"
-msgstr "подÑказки к вопроÑам"
-
-#: skins/default/templates/question_edit_tips.html:6
-msgid "please ask a relevant question"
-msgstr "ваш Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð´Ð¾Ð»Ð¶ÐµÐ½ ÑоответÑтвовать тематике ÑообщеÑтва"
-
-#: skins/default/templates/question_edit_tips.html:9
-msgid "please try provide enough details"
-msgstr "поÑтарайтеÑÑŒ придать макÑимум информативноÑти Ñвоему вопроÑу"
-
#: skins/default/templates/question_retag.html:3
-#: skins/default/templates/question_retag.html:6
+#: skins/default/templates/question_retag.html:5
msgid "Change tags"
msgstr "Измененить Ñ‚Ñги"
-#: skins/default/templates/question_retag.html:25
+#: skins/default/templates/question_retag.html:21
msgid "Retag"
msgstr "изменить теги"
-#: skins/default/templates/question_retag.html:34
+#: skins/default/templates/question_retag.html:28
msgid "Why use and modify tags?"
msgstr "Зачем иÑпользовать и изменÑÑ‚ÑŒ теги?"
-#: skins/default/templates/question_retag.html:36
+#: skins/default/templates/question_retag.html:30
msgid "Tags help to keep the content better organized and searchable"
msgstr "Теги помогают лучше организовать поиÑк"
-#: skins/default/templates/question_retag.html:38
+#: skins/default/templates/question_retag.html:32
msgid "tag editors receive special awards from the community"
msgstr "редакторы тегов получают Ñпециальные призы от ÑообщеÑтва"
-#: skins/default/templates/question_retag.html:79
+#: skins/default/templates/question_retag.html:59
msgid "up to 5 tags, less than 20 characters each"
msgstr "до 5 тегов, менее 20 Ñимволов каждый"
-#: skins/default/templates/questions.html:4
-msgid "Questions"
-msgstr "ВопроÑÑ‹"
-
-#: skins/default/templates/questions.html:9
-msgid "In:"
-msgstr "Ð’:"
-
-#: skins/default/templates/questions.html:18
-msgid "see unanswered questions"
-msgstr "проÑмотреть неотвеченные ворпоÑÑ‹"
-
-#: skins/default/templates/questions.html:24
-msgid "see your favorite questions"
-msgstr "проÑмотр отмеченные вопроÑÑ‹"
-
-#: skins/default/templates/questions.html:29
-msgid "Sort by:"
-msgstr "УпорÑдочить по:"
-
-#: skins/default/templates/questions.html:99
-#: skins/default/templates/questions.html:102
-msgid "subscribe to the questions feed"
-msgstr "подпиÑатьÑÑ Ð½Ð° RSS-канал Ð´Ð»Ñ Ð²Ð¾Ð¿Ñ€Ð¾Ñов"
-
-#: skins/default/templates/questions.html:103
-msgid "rss feed"
-msgstr "RSS-канал"
-
-#: skins/default/templates/questions.html:107
-#, python-format
-msgid ""
-"\n"
-" %(q_num)s question\n"
-" "
-msgid_plural ""
-"\n"
-" %(q_num)s questions\n"
-" "
-msgstr[0] ""
-"\n"
-"%(q_num)s ответ:"
-msgstr[1] ""
-"\n"
-"%(q_num)s ответа:"
-msgstr[2] ""
-"\n"
-"%(q_num)s ответов:"
-
-#: skins/default/templates/questions.html:113 views/readers.py:158
-#, python-format
-msgid "%(q_num)s question"
-msgid_plural "%(q_num)s questions"
-msgstr[0] "%(q_num)s вопроÑ"
-msgstr[1] "%(q_num)s вопроÑа"
-msgstr[2] "%(q_num)s вопроÑов"
-
-#: skins/default/templates/questions.html:116
-#, python-format
-msgid "with %(author_name)s's contributions"
-msgstr "при помощи %(author_name)s"
-
-#: skins/default/templates/questions.html:119
-msgid "tagged"
-msgstr "помеченный"
-
-#: skins/default/templates/questions.html:124
-msgid "Search tips:"
-msgstr "Советы по поиÑку:"
-
-#: skins/default/templates/questions.html:127
-msgid "reset author"
-msgstr "ÑÐ±Ñ€Ð¾Ñ Ð°Ð²Ñ‚Ð¾Ñ€Ð°"
-
-#: skins/default/templates/questions.html:129
-#: skins/default/templates/questions.html:132
-#: skins/default/templates/questions.html:170
-#: skins/default/templates/questions.html:173
-msgid " or "
-msgstr "или"
-
-#: skins/default/templates/questions.html:130
-msgid "reset tags"
-msgstr "ÑброÑить Ñ‚Ñги"
-
-#: skins/default/templates/questions.html:133
-#: skins/default/templates/questions.html:136
-msgid "start over"
-msgstr "начать вÑе Ñначала"
-
-#: skins/default/templates/questions.html:138
-msgid " - to expand, or dig in by adding more tags and revising the query."
-msgstr "- раÑширить или Ñузить, добавлÑÑ Ñвои метки и Ð¿Ð¾Ð»ÑƒÑ‡Ð°Ñ Ð·Ð°Ð¿Ñ€Ð¾Ñ."
-
-#: skins/default/templates/questions.html:141
-msgid "Search tip:"
-msgstr "ПодÑказки Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка:"
-
-#: skins/default/templates/questions.html:141
-msgid "add tags and a query to focus your search"
-msgstr "добавить теги и выполнить поиÑк"
-
-#: skins/default/templates/questions.html:156
-#: skins/default/templates/unused/questions_ajax.html:79
-msgid "There are no unanswered questions here"
-msgstr "Ðеотвеченных вопроÑов нет"
-
-#: skins/default/templates/questions.html:159
-#: skins/default/templates/unused/questions_ajax.html:82
-msgid "No favorite questions here. "
-msgstr "Отмеченных вопроÑов нет."
-
-#: skins/default/templates/questions.html:160
-#: skins/default/templates/unused/questions_ajax.html:83
-msgid "Please start (bookmark) some questions when you visit them"
-msgstr ""
-"Ðачните добавлÑÑ‚ÑŒ в (закладки) некоторые вопроÑÑ‹, когда вы поÑещаете их"
-
-#: skins/default/templates/questions.html:165
-#: skins/default/templates/unused/questions_ajax.html:88
-msgid "You can expand your search by "
-msgstr "Ð’Ñ‹ можете раÑширить поиÑк"
-
-#: skins/default/templates/questions.html:168
-#: skins/default/templates/unused/questions_ajax.html:92
-msgid "resetting author"
-msgstr "ÑÐ±Ñ€Ð¾Ñ Ð°Ð²Ñ‚Ð¾Ñ€Ð°"
-
-#: skins/default/templates/questions.html:171
-#: skins/default/templates/unused/questions_ajax.html:96
-msgid "resetting tags"
-msgstr "ÑÐ±Ñ€Ð¾Ñ Ñ‚Ñгов"
-
-#: skins/default/templates/questions.html:174
-#: skins/default/templates/questions.html:177
-#: skins/default/templates/unused/questions_ajax.html:100
-#: skins/default/templates/unused/questions_ajax.html:104
-msgid "starting over"
-msgstr "начать Ñначала"
-
-#: skins/default/templates/questions.html:182
-#: skins/default/templates/unused/questions_ajax.html:109
-msgid "Please always feel free to ask your question!"
-msgstr "Ð’Ñ‹ вÑегда можете задать Ñвой вопроÑ!"
-
-#: skins/default/templates/questions.html:186
-#: skins/default/templates/unused/questions_ajax.html:113
-msgid "Did not find what you were looking for?"
-msgstr "Ðе нашли то, что иÑкали?"
-
-#: skins/default/templates/questions.html:187
-#: skins/default/templates/unused/questions_ajax.html:114
-msgid "Please, post your question!"
-msgstr "ПожалуйÑта, опубликуйте Ñвой вопроÑ!"
-
-#: skins/default/templates/questions.html:202
-msgid "Contributors"
-msgstr "Ðвторы"
-
-#: skins/default/templates/questions.html:219
-msgid "Related tags"
-msgstr "СвÑзанные теги"
-
-#: skins/default/templates/reopen.html:3 skins/default/templates/reopen.html:6
+#: skins/default/templates/reopen.html:3 skins/default/templates/reopen.html:5
msgid "Reopen question"
msgstr "Переоткрыть вопроÑ"
-#: skins/default/templates/reopen.html:9
+#: skins/default/templates/reopen.html:6
msgid "Title"
msgstr "Заголовок"
-#: skins/default/templates/reopen.html:14
-#, python-format
+#: skins/default/templates/reopen.html:11
+#, fuzzy, python-format
msgid ""
"This question has been closed by \n"
-" <a href=\"%(closed_by_profile_url)s\">%(closed_by_username)s</a>\n"
-" "
+" <a href=\"%(closed_by_profile_url)s\">%(closed_by_username)s</a>\n"
msgstr ""
"Этот Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð±Ñ‹Ð» закрыт\n"
"<a href=\"%(closed_by_profile_url)s\">%(closed_by_username)s</a>"
-#: skins/default/templates/reopen.html:19
+#: skins/default/templates/reopen.html:16
msgid "Close reason:"
msgstr "Закрыт по причине:"
-#: skins/default/templates/reopen.html:22
+#: skins/default/templates/reopen.html:19
msgid "When:"
msgstr "Когда:"
-#: skins/default/templates/reopen.html:25
+#: skins/default/templates/reopen.html:22
msgid "Reopen this question?"
msgstr "Открыть повторно Ñтот вопроÑ?"
-#: skins/default/templates/reopen.html:29
+#: skins/default/templates/reopen.html:26
msgid "Reopen this question"
msgstr "Открыть повторно Ñтот вопроÑ"
@@ -4201,33 +4302,20 @@ msgstr "нажмите, чтобы Ñкрыть/показать верÑии"
msgid "revision %(number)s"
msgstr "верÑÐ¸Ñ %(number)s"
-#: skins/default/templates/tag_selector.html:3
-msgid "Interesting tags"
-msgstr "Избранные теги"
-
-#: skins/default/templates/tag_selector.html:13
-#, python-format
-msgid "remove '%(tag_name)s' from the list of interesting tags"
-msgstr "удалить '%(tag_name)s' из ÑпиÑка интереÑных тегов"
-
-#: skins/default/templates/tag_selector.html:19
-#: skins/default/templates/tag_selector.html:36
-#: skins/default/templates/user_moderate.html:35
-msgid "Add"
-msgstr "Добавить"
-
-#: skins/default/templates/tag_selector.html:20
-msgid "Ignored tags"
-msgstr "Игнорируемые теги"
+#: skins/default/templates/subscribe_for_tags.html:3
+#: skins/default/templates/subscribe_for_tags.html:5
+#, fuzzy
+msgid "Subscribe for tags"
+msgstr "иÑпользовать теги"
-#: skins/default/templates/tag_selector.html:30
-#, python-format
-msgid "remove '%(tag_name)s' from the list of ignored tags"
-msgstr "удалить '%(tag_name)s' из ÑпиÑка игнорируемых тегов"
+#: skins/default/templates/subscribe_for_tags.html:6
+#, fuzzy
+msgid "Please, subscribe for the following tags:"
+msgstr "Ð’Ð¾Ð¿Ñ€Ð¾Ñ Ð±Ñ‹Ð» закрыт по Ñледующим причинам"
-#: skins/default/templates/tag_selector.html:39
-msgid "keep ignored questions hidden"
-msgstr "Ñкрыть игнорируемые вопроÑÑ‹"
+#: skins/default/templates/subscribe_for_tags.html:15
+msgid "Subscribe"
+msgstr ""
#: skins/default/templates/tags.html:4 skins/default/templates/tags.html:8
msgid "Tag list"
@@ -4249,7 +4337,7 @@ msgstr "Ñортировать по чаÑтоте иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ñ‚
msgid "by popularity"
msgstr "по популÑрноÑти"
-#: skins/default/templates/tags.html:27
+#: skins/default/templates/tags.html:26
#, python-format
msgid ""
"All tags matching '<span class=\"darkred\"><strong>%(stag)s</strong></span>'"
@@ -4257,354 +4345,19 @@ msgstr ""
"Ð’Ñе теги, ÑоответÑтвующие <strong><span class=\"darkred\"> '%(stag)s'</"
"span></strong> "
-#: skins/default/templates/tags.html:30
+#: skins/default/templates/tags.html:29
msgid "Nothing found"
msgstr "Ðичего не найдено"
-#: skins/default/templates/user.html:14
-#, python-format
-msgid "%(username)s's profile"
-msgstr "профиль Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %(username)s"
-
-#: skins/default/templates/user_edit.html:4
-msgid "Edit user profile"
-msgstr "Изменить профиль пользователÑ"
-
-#: skins/default/templates/user_edit.html:7
-msgid "edit profile"
-msgstr "изменить профиль"
-
-#: skins/default/templates/user_edit.html:17
-#: skins/default/templates/user_info.html:11
-msgid "change picture"
-msgstr "изменить изображение"
-
-#: skins/default/templates/user_edit.html:20
-msgid "Registered user"
-msgstr "ЗарегиÑтрированный пользователь"
-
-#: skins/default/templates/user_edit.html:27
-msgid "Screen Name"
-msgstr "Ðазвание Ñкрана"
-
-#: skins/default/templates/user_edit.html:75
-#: skins/default/templates/user_email_subscriptions.html:18
-msgid "Update"
-msgstr "Обновить"
-
-#: skins/default/templates/user_email_subscriptions.html:4
-msgid "Email subscription settings"
-msgstr "ÐаÑтройка подпиÑки по Ñлектронной почте"
-
-#: skins/default/templates/user_email_subscriptions.html:5
-msgid "email subscription settings info"
-msgstr "Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ наÑтройках подпиÑки по Ñлектронной почте"
-
-#: skins/default/templates/user_email_subscriptions.html:19
-msgid "Stop sending email"
-msgstr "ОÑтановить отправку Ñлектронной почты"
-
-#: skins/default/templates/user_inbox.html:31
-msgid "Sections:"
-msgstr "Разделы:"
-
-#: skins/default/templates/user_inbox.html:35
-#, python-format
-msgid "forum responses (%(re_count)s)"
-msgstr "ответы в форуме (%(re_count)s)"
-
-#: skins/default/templates/user_inbox.html:40
-#, python-format
-msgid "flagged items (%(flag_count)s)"
-msgstr "помеченные пункты (%(flag_count)s)"
-
-#: skins/default/templates/user_inbox.html:46
-msgid "select:"
-msgstr "выберите:"
-
-#: skins/default/templates/user_inbox.html:48
-msgid "seen"
-msgstr "прочитанные"
-
-#: skins/default/templates/user_inbox.html:49
-msgid "new"
-msgstr "новые"
-
-#: skins/default/templates/user_inbox.html:50
-msgid "none"
-msgstr "нет"
-
-#: skins/default/templates/user_inbox.html:51
-msgid "mark as seen"
-msgstr "отметить как прочитано "
-
-#: skins/default/templates/user_inbox.html:52
-msgid "mark as new"
-msgstr "отметить как новое"
-
-#: skins/default/templates/user_inbox.html:53
-msgid "dismiss"
-msgstr "удалить"
+#: skins/default/templates/users.html:4 skins/default/templates/users.html:7
+msgid "Users"
+msgstr "Пользователи"
-#: skins/default/templates/user_info.html:18
#: skins/default/templates/users.html:13 skins/default/templates/users.html:14
+#: skins/default/templates/user_profile/user_info.html:25
msgid "reputation"
msgstr "карма"
-#: skins/default/templates/user_info.html:30
-msgid "manage login methods"
-msgstr "управление методами входа"
-
-#: skins/default/templates/user_info.html:34
-msgid "update profile"
-msgstr "обновить профиль"
-
-#: skins/default/templates/user_info.html:46
-msgid "real name"
-msgstr "наÑтоÑщее имÑ"
-
-#: skins/default/templates/user_info.html:51
-msgid "member for"
-msgstr "ÑоÑтоит пользователем"
-
-#: skins/default/templates/user_info.html:56
-msgid "last seen"
-msgstr "поÑледнее поÑещение"
-
-#: skins/default/templates/user_info.html:62
-msgid "user website"
-msgstr "Ñайт пользователÑ"
-
-#: skins/default/templates/user_info.html:68
-msgid "location"
-msgstr "меÑтоположение"
-
-#: skins/default/templates/user_info.html:75
-msgid "age"
-msgstr "возраÑÑ‚"
-
-#: skins/default/templates/user_info.html:76
-msgid "age unit"
-msgstr "возраÑÑ‚"
-
-#: skins/default/templates/user_info.html:83
-msgid "todays unused votes"
-msgstr "ÑегоднÑшних неиÑпользованных голоÑов"
-
-#: skins/default/templates/user_info.html:84
-msgid "votes left"
-msgstr "оÑталоÑÑŒ голоÑов"
-
-#: skins/default/templates/user_moderate.html:5
-#, python-format
-msgid "%(username)s's current status is \"%(status)s\""
-msgstr "пользователь %(username)s имеет ÑÑ‚Ð°Ñ‚ÑƒÑ \"%(status)s\""
-
-#: skins/default/templates/user_moderate.html:8
-msgid "User status changed"
-msgstr "Ð¡Ñ‚Ð°Ñ‚ÑƒÑ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð·Ð¼ÐµÐ½Ð¸Ð»ÑÑ"
-
-#: skins/default/templates/user_moderate.html:15
-msgid "Save"
-msgstr "Сохранить"
-
-#: skins/default/templates/user_moderate.html:21
-#, python-format
-msgid "Your current reputation is %(reputation)s points"
-msgstr "Ваша Ñ‚ÐµÐºÑƒÑ‰Ð°Ñ ÐºÐ°Ñ€Ð¼Ð° %(reputation)s балов"
-
-#: skins/default/templates/user_moderate.html:23
-#, python-format
-msgid "User's current reputation is %(reputation)s points"
-msgstr "Карма Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %(reputation)s балов "
-
-#: skins/default/templates/user_moderate.html:27
-msgid "User reputation changed"
-msgstr "Карма Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð°"
-
-#: skins/default/templates/user_moderate.html:34
-msgid "Subtract"
-msgstr "ОтнÑÑ‚ÑŒ"
-
-#: skins/default/templates/user_moderate.html:39
-#, python-format
-msgid "Send message to %(username)s"
-msgstr "Отправить Ñообщение Ð´Ð»Ñ %(username)s"
-
-#: skins/default/templates/user_moderate.html:40
-msgid ""
-"An email will be sent to the user with 'reply-to' field set to your email "
-"address. Please make sure that your address is entered correctly."
-msgstr ""
-"ПиÑьмо будет отправлено пользователю Ñо ÑÑылкой \"Ответить\" на ваш Ð°Ð´Ñ€ÐµÑ "
-"Ñлектронной почты. ПожалуйÑта, убедитеÑÑŒ, что ваш Ð°Ð´Ñ€ÐµÑ Ð²Ð²ÐµÐ´ÐµÐ½ правильно."
-
-#: skins/default/templates/user_moderate.html:42
-msgid "Message sent"
-msgstr "Сообщение отправлено"
-
-#: skins/default/templates/user_moderate.html:60
-msgid "Send message"
-msgstr "Отправить Ñообщение"
-
-#: skins/default/templates/user_reputation.html:7
-msgid "Your karma change log."
-msgstr "ИÑÑ‚Ð¾Ñ€Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹ кармы."
-
-#: skins/default/templates/user_reputation.html:9
-#, python-format
-msgid "%(user_name)s's karma change log"
-msgstr "ИÑÑ‚Ð¾Ñ€Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹ кармы Ð´Ð»Ñ %(user_name)s "
-
-#: skins/default/templates/user_stats.html:7
-#, python-format
-msgid "<span class=\"count\">%(counter)s</span> Question"
-msgid_plural "<span class=\"count\">%(counter)s</span> Questions"
-msgstr[0] "<span class=\"count\">1</span> ВопроÑ"
-msgstr[1] "<span class=\"count\">%(counter)s</span> ВопроÑов"
-msgstr[2] "<span class=\"count\">%(counter)s</span> ВопроÑа"
-
-#: skins/default/templates/user_stats.html:12
-#, python-format
-msgid "<span class=\"count\">%(counter)s</span> Answer"
-msgid_plural "<span class=\"count\">%(counter)s</span> Answers"
-msgstr[0] "<span class=\"count\">1</span> Ответ"
-msgstr[1] "<span class=\"count\">%(counter)s</span> Ответов"
-msgstr[2] "<span class=\"count\">%(counter)s</span> Ответа"
-
-#: skins/default/templates/user_stats.html:20
-#, python-format
-msgid "the answer has been voted for %(answer_score)s times"
-msgstr "за ответ проголоÑовали %(answer_score)s раз"
-
-#: skins/default/templates/user_stats.html:20
-msgid "this answer has been selected as correct"
-msgstr "Ñтот ответ был выбран в качеÑтве правильного"
-
-#: skins/default/templates/user_stats.html:30
-#, python-format
-msgid "(%(comment_count)s comment)"
-msgid_plural "the answer has been commented %(comment_count)s times"
-msgstr[0] "(один комментарий)"
-msgstr[1] "ответ был прокомментирован %(comment_count)s раз"
-msgstr[2] "ответ был прокомментирован %(comment_count)s раза"
-
-#: skins/default/templates/user_stats.html:40
-#, python-format
-msgid "<span class=\"count\">%(cnt)s</span> Vote"
-msgid_plural "<span class=\"count\">%(cnt)s</span> Votes "
-msgstr[0] "<span class=\"count\">1</span> ГолоÑ"
-msgstr[1] "<span class=\"count\">%(cnt)s</span> ГолоÑов"
-msgstr[2] "<span class=\"count\">%(cnt)s</span> ГолоÑа"
-
-#: skins/default/templates/user_stats.html:46
-msgid "thumb up"
-msgstr "Ñ \"за\""
-
-#: skins/default/templates/user_stats.html:47
-msgid "user has voted up this many times"
-msgstr "пользователь проголоÑовал \"за\" много раз"
-
-#: skins/default/templates/user_stats.html:50
-msgid "thumb down"
-msgstr "Ñ \"против\""
-
-#: skins/default/templates/user_stats.html:51
-msgid "user voted down this many times"
-msgstr "пользователь проголоÑовал \"против\" много раз"
-
-#: skins/default/templates/user_stats.html:59
-#, python-format
-msgid "<span class=\"count\">%(counter)s</span> Tag"
-msgid_plural "<span class=\"count\">%(counter)s</span> Tags"
-msgstr[0] "<span class=\"count\">1</span> Тег"
-msgstr[1] "<span class=\"count\">%(counter)s</span> Тегов"
-msgstr[2] "<span class=\"count\">%(counter)s</span> Тега"
-
-#: skins/default/templates/user_stats.html:67
-#, python-format
-msgid ""
-"see other questions with %(view_user)s's contributions tagged '%(tag_name)s' "
-msgstr ""
-"Ñм. другие вопроÑÑ‹, в которых еÑÑ‚ÑŒ вклад от %(view_user)s, отмеченные тегом "
-"'%(tag_name)s'"
-
-#: skins/default/templates/user_stats.html:81
-#, python-format
-msgid "<span class=\"count\">%(counter)s</span> Badge"
-msgid_plural "<span class=\"count\">%(counter)s</span> Badges"
-msgstr[0] "<span class=\"count\">%(counter)s</span> Медаль"
-msgstr[1] "<span class=\"count\">%(counter)s</span> Медали"
-msgstr[2] "<span class=\"count\">%(counter)s</span> Медалей"
-
-#: skins/default/templates/user_tabs.html:5
-msgid "User profile"
-msgstr "Профиль пользователÑ"
-
-#: skins/default/templates/user_tabs.html:6
-msgid "overview"
-msgstr "обзор"
-
-#: skins/default/templates/user_tabs.html:9 views/users.py:729
-msgid "comments and answers to others questions"
-msgstr "комментарии и ответы на другие вопроÑÑ‹"
-
-#: skins/default/templates/user_tabs.html:10
-msgid "inbox"
-msgstr "входÑщие"
-
-#: skins/default/templates/user_tabs.html:13
-msgid "graph of user reputation"
-msgstr "график кармы"
-
-#: skins/default/templates/user_tabs.html:14
-msgid "reputation history"
-msgstr "иÑÑ‚Ð¾Ñ€Ð¸Ñ ÐºÐ°Ñ€Ð¼Ñ‹"
-
-#: skins/default/templates/user_tabs.html:16
-msgid "questions that user selected as his/her favorite"
-msgstr "ВопроÑÑ‹, выбранные пользователем в закладки"
-
-#: skins/default/templates/user_tabs.html:17
-msgid "favorites"
-msgstr "закладки"
-
-#: skins/default/templates/user_tabs.html:19
-msgid "recent activity"
-msgstr "поÑледнÑÑ Ð°ÐºÑ‚Ð¸Ð²Ð½Ð¾ÑÑ‚ÑŒ"
-
-#: skins/default/templates/user_tabs.html:20
-msgid "activity"
-msgstr "активноÑÑ‚ÑŒ"
-
-#: skins/default/templates/user_tabs.html:23 views/users.py:794
-msgid "user vote record"
-msgstr "Ð³Ð¾Ð»Ð¾Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ"
-
-#: skins/default/templates/user_tabs.html:24
-msgid "casted votes"
-msgstr "поданные голоÑа"
-
-#: skins/default/templates/user_tabs.html:28 views/users.py:904
-msgid "email subscription settings"
-msgstr "наÑтройки подпиÑки по Ñлектронной почте"
-
-#: skins/default/templates/user_tabs.html:29
-msgid "subscriptions"
-msgstr "подпиÑки по email"
-
-#: skins/default/templates/user_tabs.html:33 views/users.py:216
-msgid "moderate this user"
-msgstr "Модерировать Ñтого пользователÑ"
-
-#: skins/default/templates/user_tabs.html:34
-msgid "moderation"
-msgstr "модерациÑ"
-
-#: skins/default/templates/users.html:4 skins/default/templates/users.html:7
-msgid "Users"
-msgstr "Пользователи"
-
#: skins/default/templates/users.html:19 skins/default/templates/users.html:20
msgid "recent"
msgstr "новички"
@@ -4613,32 +4366,15 @@ msgstr "новички"
msgid "by username"
msgstr "по имени"
-#: skins/default/templates/users.html:38
+#: skins/default/templates/users.html:37
#, python-format
msgid "users matching query %(suser)s:"
msgstr "пользователей, ÑоответÑтвующих запроÑу, %(suser)s:"
-#: skins/default/templates/users.html:41
+#: skins/default/templates/users.html:40
msgid "Nothing found."
msgstr "Ðичего не найдено."
-#: skins/default/templates/users_questions.html:9
-#: skins/default/templates/users_questions.html:17
-#, python-format
-msgid "this questions was selected as favorite %(cnt)s time"
-msgid_plural "this questions was selected as favorite %(cnt)s times"
-msgstr[0] "Ñтот Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð±Ñ‹Ð» добавлен в закладки %(cnt)s раз"
-msgstr[1] "Ñти вопроÑÑ‹ были добавлены в закладки %(cnt)s раз"
-msgstr[2] "Ñти вопроÑÑ‹ были добавлены в закладки %(cnt)s раз"
-
-#: skins/default/templates/users_questions.html:10
-msgid "thumb-up on"
-msgstr "Ñ \"за\""
-
-#: skins/default/templates/users_questions.html:18
-msgid "thumb-up off"
-msgstr "Ñ \"против\""
-
#: skins/default/templates/authopenid/changeemail.html:2
#: skins/default/templates/authopenid/changeemail.html:8
#: skins/default/templates/authopenid/changeemail.html:36
@@ -4719,18 +4455,18 @@ msgstr ""
"email ключ не отоÑлан на %(email)s, изменить email здеÑÑŒ %(change_link)s"
#: skins/default/templates/authopenid/complete.html:21
-#: skins/default/templates/authopenid/complete.html:24
+#: skins/default/templates/authopenid/complete.html:23
msgid "Registration"
msgstr "РегиÑтрациÑ"
-#: skins/default/templates/authopenid/complete.html:29
+#: skins/default/templates/authopenid/complete.html:27
#, python-format
msgid "register new %(provider)s account info, see %(gravatar_faq_url)s"
msgstr ""
"зарегиÑтрировать нового провайдера %(provider)s к учетной запиÑи, Ñмотрите %"
"(gravatar_faq_url)s"
-#: skins/default/templates/authopenid/complete.html:32
+#: skins/default/templates/authopenid/complete.html:30
#, python-format
msgid ""
"%(username)s already exists, choose another name for \n"
@@ -4741,7 +4477,7 @@ msgstr ""
"%(username)s уже ÑущеÑтвует, выберите другое Ð¸Ð¼Ñ Ð´Ð»Ñ %(provider)s. Email так "
"же требуетÑÑ Ñ‚Ð¾Ð¶Ðµ, Ñмотрите %(gravatar_faq_url)s"
-#: skins/default/templates/authopenid/complete.html:36
+#: skins/default/templates/authopenid/complete.html:34
#, python-format
msgid ""
"register new external %(provider)s account info, see %(gravatar_faq_url)s"
@@ -4749,39 +4485,39 @@ msgstr ""
"региÑÑ‚Ñ€Ð°Ñ†Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ внешнего %(provider)s к учетной запиÑи, Ñмотрите %"
"(gravatar_faq_url)s"
-#: skins/default/templates/authopenid/complete.html:39
+#: skins/default/templates/authopenid/complete.html:37
#, python-format
msgid "register new Facebook connect account info, see %(gravatar_faq_url)s"
msgstr "региÑÑ‚Ñ€Ð°Ñ†Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ Facebook подключениÑ, Ñмотрите %(gravatar_faq_url)s"
-#: skins/default/templates/authopenid/complete.html:42
+#: skins/default/templates/authopenid/complete.html:40
msgid "This account already exists, please use another."
msgstr "Эта ÑƒÑ‡ÐµÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ уже ÑущеÑтвует, пожалуйÑта, иÑпользуйте другую."
-#: skins/default/templates/authopenid/complete.html:61
+#: skins/default/templates/authopenid/complete.html:59
msgid "Screen name label"
msgstr "Логин"
-#: skins/default/templates/authopenid/complete.html:68
+#: skins/default/templates/authopenid/complete.html:66
msgid "Email address label"
msgstr "Ярлык Ð´Ð»Ñ Email"
-#: skins/default/templates/authopenid/complete.html:74
-#: skins/default/templates/authopenid/signup_with_password.html:17
+#: skins/default/templates/authopenid/complete.html:72
+#: skins/default/templates/authopenid/signup_with_password.html:36
msgid "receive updates motivational blurb"
msgstr "получать Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¼Ð¾Ñ‚Ð¸Ð²Ð°Ñ†Ð¸Ð¾Ð½Ð½Ð¾Ð¹ рекламы"
-#: skins/default/templates/authopenid/complete.html:78
-#: skins/default/templates/authopenid/signup_with_password.html:21
+#: skins/default/templates/authopenid/complete.html:76
+#: skins/default/templates/authopenid/signup_with_password.html:40
msgid "please select one of the options above"
msgstr "ПожалуйÑта, выберите один из вариантов"
-#: skins/default/templates/authopenid/complete.html:81
+#: skins/default/templates/authopenid/complete.html:79
msgid "Tag filter tool will be your right panel, once you log in."
msgstr ""
"Фильтр тегов будет в правой панели, поÑле того, как вы войдете в ÑиÑтему"
-#: skins/default/templates/authopenid/complete.html:82
+#: skins/default/templates/authopenid/complete.html:80
msgid "create account"
msgstr "зарегиÑтрироватьÑÑ"
@@ -4835,11 +4571,24 @@ msgstr ""
"дальнейших дейÑтвий не требуетÑÑ. ПроÑто проигнорируйте Ñто пиÑьмо, мы "
"приноÑим Ñвои Ð¸Ð·Ð²Ð¸Ð½ÐµÐ½Ð¸Ñ Ð·Ð° причиненные неудобÑтва."
-#: skins/default/templates/authopenid/signin.html:3
+#: skins/default/templates/authopenid/macros.html:46
+msgid "Please enter your <span>user name</span>, then sign in"
+msgstr "ПожалуйÑта, введите ваше <span>Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ</span>, затем войдите"
+
+#: skins/default/templates/authopenid/macros.html:47
+#: skins/default/templates/authopenid/signin.html:89
+msgid "(or select another login method above)"
+msgstr "(или выберите один из методов входа выше)"
+
+#: skins/default/templates/authopenid/macros.html:49
+msgid "Sign in"
+msgstr "Войти"
+
+#: skins/default/templates/authopenid/signin.html:4
msgid "User login"
msgstr "Вход выполнен"
-#: skins/default/templates/authopenid/signin.html:11
+#: skins/default/templates/authopenid/signin.html:14
#, python-format
msgid ""
"\n"
@@ -4849,7 +4598,7 @@ msgstr ""
"\n"
"Ваш ответ на %(title)s / %(summary)s будет опубликован, как только вы войдете"
-#: skins/default/templates/authopenid/signin.html:18
+#: skins/default/templates/authopenid/signin.html:21
#, python-format
msgid ""
"Your question \n"
@@ -4859,7 +4608,7 @@ msgstr ""
"Ваш Ð²Ð¾Ð¿Ñ€Ð¾Ñ %(title)s / %(summary)s Ñ‹ будет опубликован поÑле того, как вы "
"войдёте"
-#: skins/default/templates/authopenid/signin.html:25
+#: skins/default/templates/authopenid/signin.html:28
msgid ""
"Take a pick of your favorite service below to sign in using secure OpenID or "
"similar technology. Your external service password always stays confidential "
@@ -4869,7 +4618,7 @@ msgstr ""
"технологию. Пароль к вашей внешней Ñлужбе вÑегда конфиденциален и нет "
"необходимоÑти Ñоздавать пароль при региÑтрации."
-#: skins/default/templates/authopenid/signin.html:28
+#: skins/default/templates/authopenid/signin.html:31
msgid ""
"It's a good idea to make sure that your existing login methods still work, "
"or add a new one. Please click any of the icons below to check/change or add "
@@ -4879,7 +4628,7 @@ msgstr ""
"добавить и другие методы. ПожалуйÑта, выберите любую иконку ниже Ð´Ð»Ñ "
"проверки/изменениÑ/Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¼ÐµÑ‚Ð¾Ð´Ð¾Ð² входа."
-#: skins/default/templates/authopenid/signin.html:30
+#: skins/default/templates/authopenid/signin.html:33
msgid ""
"Please add a more permanent login method by clicking one of the icons below, "
"to avoid logging in via email each time."
@@ -4887,7 +4636,7 @@ msgstr ""
"ПожалуйÑта, добавьте поÑтоÑнный метод входа кликнув по одной из иконок ниже, "
"чтобы не входить каждый раз через e-mail."
-#: skins/default/templates/authopenid/signin.html:34
+#: skins/default/templates/authopenid/signin.html:37
msgid ""
"Click on one of the icons below to add a new login method or re-validate an "
"existing one."
@@ -4895,7 +4644,7 @@ msgstr ""
"Кликние на одной из иконок ниже чтобы добавить метод входа или проверить уже "
"ÑущеÑтвующий."
-#: skins/default/templates/authopenid/signin.html:36
+#: skins/default/templates/authopenid/signin.html:39
msgid ""
"You don't have a method to log in right now, please add one or more by "
"clicking any of the icons below."
@@ -4903,7 +4652,7 @@ msgstr ""
"Ðа данный момент вами не выбран ни один из методов входа, добавьте Ñ…Ð¾Ñ‚Ñ Ð±Ñ‹ "
"один кликнув по иконке ниже."
-#: skins/default/templates/authopenid/signin.html:39
+#: skins/default/templates/authopenid/signin.html:42
msgid ""
"Please check your email and visit the enclosed link to re-connect to your "
"account"
@@ -4912,136 +4661,133 @@ msgstr ""
"аккаунт"
#: skins/default/templates/authopenid/signin.html:86
-msgid "Please enter your <span>user name</span>, then sign in"
-msgstr "ПожалуйÑта, введите ваше <span>Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ</span>, затем войдите"
-
-#: skins/default/templates/authopenid/signin.html:87
-#: skins/default/templates/authopenid/signin.html:109
-msgid "(or select another login method above)"
-msgstr "(или выберите один из методов входа выше)"
-
-#: skins/default/templates/authopenid/signin.html:89
-msgid "Sign in"
-msgstr "Войти"
-
-#: skins/default/templates/authopenid/signin.html:107
msgid "Please enter your <span>user name and password</span>, then sign in"
msgstr ""
"ПожалуйÑта, введите ваши <span>Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸ пароль</span>, затем "
"войдите"
-#: skins/default/templates/authopenid/signin.html:111
+#: skins/default/templates/authopenid/signin.html:92
msgid "Login failed, please try again"
msgstr "Вход завершилÑÑ Ð½ÐµÑƒÐ´Ð°Ñ‡ÐµÐ¹, попробуйте ещё раз"
-#: skins/default/templates/authopenid/signin.html:114
+#: skins/default/templates/authopenid/signin.html:95
msgid "Login name"
msgstr "Ð˜Ð¼Ñ Ð¿Ñ€Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ"
-#: skins/default/templates/authopenid/signin.html:118
+#: skins/default/templates/authopenid/signin.html:99
msgid "Password"
msgstr "Пароль"
-#: skins/default/templates/authopenid/signin.html:122
+#: skins/default/templates/authopenid/signin.html:103
msgid "Login"
msgstr "Войти"
-#: skins/default/templates/authopenid/signin.html:129
+#: skins/default/templates/authopenid/signin.html:110
msgid "To change your password - please enter the new one twice, then submit"
msgstr ""
"Чтобы изменить ваш пароль - пожалуйÑта, введите новый дважды и подтвердите "
"ввод"
-#: skins/default/templates/authopenid/signin.html:132
+#: skins/default/templates/authopenid/signin.html:113
msgid "New password"
msgstr "Ðовый пароль"
-#: skins/default/templates/authopenid/signin.html:137
+#: skins/default/templates/authopenid/signin.html:118
msgid "Please, retype"
msgstr "пожалуйÑта, повторите пароль"
-#: skins/default/templates/authopenid/signin.html:156
+#: skins/default/templates/authopenid/signin.html:136
msgid "Here are your current login methods"
msgstr "Ваши текущие методы входа"
-#: skins/default/templates/authopenid/signin.html:160
+#: skins/default/templates/authopenid/signin.html:140
msgid "provider"
msgstr "провайдер"
-#: skins/default/templates/authopenid/signin.html:161
+#: skins/default/templates/authopenid/signin.html:141
msgid "last used"
msgstr "поÑледний иÑпользованный"
-#: skins/default/templates/authopenid/signin.html:162
+#: skins/default/templates/authopenid/signin.html:142
msgid "delete, if you like"
msgstr "удалите, еÑли хотите"
-#: skins/default/templates/authopenid/signin.html:187
+#: skins/default/templates/authopenid/signin.html:168
msgid "Still have trouble signing in?"
msgstr "По-прежнему проблемы Ñо входом ?"
-#: skins/default/templates/authopenid/signin.html:192
+#: skins/default/templates/authopenid/signin.html:173
msgid "Please, enter your email address below and obtain a new key"
msgstr "ПожалуйÑта, введите ваш email-Ð°Ð´Ñ€ÐµÑ Ð½Ð¸Ð¶Ðµ и получите новый ключ"
-#: skins/default/templates/authopenid/signin.html:194
+#: skins/default/templates/authopenid/signin.html:175
msgid "Please, enter your email address below to recover your account"
msgstr ""
"ПожалуйÑта, введите ваш email-Ð°Ð´Ñ€ÐµÑ Ð½Ð¸Ð¶Ðµ чтобы воÑÑтановить ваш аккаунт"
-#: skins/default/templates/authopenid/signin.html:197
+#: skins/default/templates/authopenid/signin.html:178
msgid "recover your account via email"
msgstr "ВоÑÑтановить ваш аккаунт по email"
-#: skins/default/templates/authopenid/signin.html:208
+#: skins/default/templates/authopenid/signin.html:189
msgid "Send a new recovery key"
msgstr "ПоÑлать новый ключ воÑÑтановлениÑ"
-#: skins/default/templates/authopenid/signin.html:210
+#: skins/default/templates/authopenid/signin.html:191
msgid "Recover your account via email"
msgstr "ВоÑÑтановить ваш аккаунт иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ email"
-#: skins/default/templates/authopenid/signin.html:221
+#: skins/default/templates/authopenid/signin.html:203
msgid "Why use OpenID?"
msgstr "ПлюÑÑ‹ иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ OpenID"
-#: skins/default/templates/authopenid/signin.html:224
+#: skins/default/templates/authopenid/signin.html:206
msgid "with openid it is easier"
msgstr "С OpenID проще"
-#: skins/default/templates/authopenid/signin.html:227
+#: skins/default/templates/authopenid/signin.html:209
msgid "reuse openid"
msgstr "ИÑпользуйте везде повторно"
-#: skins/default/templates/authopenid/signin.html:230
+#: skins/default/templates/authopenid/signin.html:212
msgid "openid is widely adopted"
msgstr "OpenID широко раÑпроÑтранён"
-#: skins/default/templates/authopenid/signin.html:233
+#: skins/default/templates/authopenid/signin.html:215
msgid "openid is supported open standard"
msgstr "OpenID поддерживаемый открытый Ñтандарт"
-#: skins/default/templates/authopenid/signin.html:237
+#: skins/default/templates/authopenid/signin.html:219
msgid "Find out more"
msgstr "Узнать больше"
-#: skins/default/templates/authopenid/signin.html:238
+#: skins/default/templates/authopenid/signin.html:220
msgid "Get OpenID"
msgstr "Получить OpenID"
-#: skins/default/templates/authopenid/signup_with_password.html:3
+#: skins/default/templates/authopenid/signup_with_password.html:4
msgid "Signup"
msgstr "ЗарегиÑтрироватьÑÑ"
-#: skins/default/templates/authopenid/signup_with_password.html:6
+#: skins/default/templates/authopenid/signup_with_password.html:10
+#, fuzzy
+msgid "Please register by clicking on any of the icons below"
+msgstr "Чтобы войти на форум, нажмите на любую из кнопок ниже "
+
+#: skins/default/templates/authopenid/signup_with_password.html:23
+#, fuzzy
+msgid "or create a new user name and password here"
+msgstr "Создать Ð¸Ð¼Ñ Ð¸ пароль"
+
+#: skins/default/templates/authopenid/signup_with_password.html:25
msgid "Create login name and password"
msgstr "Создать Ð¸Ð¼Ñ Ð¸ пароль"
-#: skins/default/templates/authopenid/signup_with_password.html:8
+#: skins/default/templates/authopenid/signup_with_password.html:26
msgid "Traditional signup info"
msgstr "Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ традиционной региÑтрации"
-#: skins/default/templates/authopenid/signup_with_password.html:24
+#: skins/default/templates/authopenid/signup_with_password.html:44
msgid ""
"Please read and type in the two words below to help us prevent automated "
"account creation."
@@ -5049,225 +4795,820 @@ msgstr ""
"ПожалуйÑта, прочтите и укажите два Ñлова ниже, чтобы помочь нам "
"предотвратить автоматизированные ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ ÑƒÑ‡ÐµÑ‚Ð½Ð¾Ð¹ запиÑи."
-#: skins/default/templates/authopenid/signup_with_password.html:26
+#: skins/default/templates/authopenid/signup_with_password.html:47
msgid "Create Account"
msgstr "Создать учетную запиÑÑŒ"
-#: skins/default/templates/authopenid/signup_with_password.html:27
+#: skins/default/templates/authopenid/signup_with_password.html:49
msgid "or"
msgstr "или"
-#: skins/default/templates/authopenid/signup_with_password.html:28
+#: skins/default/templates/authopenid/signup_with_password.html:50
msgid "return to OpenID login"
msgstr "вернутьÑÑ Ðº Ñтарнице OpenID входа"
-#: skins/default/templates/blocks/header_meta_links.html:7
+#: skins/default/templates/avatar/add.html:3
+#, fuzzy
+msgid "add avatar"
+msgstr "что такое Gravatar"
+
+#: skins/default/templates/avatar/add.html:5
+#, fuzzy
+msgid "Change avatar"
+msgstr "Измененить Ñ‚Ñги"
+
+#: skins/default/templates/avatar/add.html:6
+#: skins/default/templates/avatar/change.html:7
+#, fuzzy
+msgid "Your current avatar: "
+msgstr "ПодробноÑти вашей учетной запиÑи:"
+
+#: skins/default/templates/avatar/add.html:9
+#: skins/default/templates/avatar/change.html:11
+msgid "You haven't uploaded an avatar yet. Please upload one now."
+msgstr ""
+
+#: skins/default/templates/avatar/add.html:13
+msgid "Upload New Image"
+msgstr ""
+
+#: skins/default/templates/avatar/change.html:4
+#, fuzzy
+msgid "change avatar"
+msgstr "Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñохранены"
+
+#: skins/default/templates/avatar/change.html:17
+msgid "Choose new Default"
+msgstr ""
+
+#: skins/default/templates/avatar/change.html:22
+#, fuzzy
+msgid "Upload"
+msgstr "zagruzhaem-file/"
+
+#: skins/default/templates/avatar/confirm_delete.html:3
+#, fuzzy
+msgid "delete avatar"
+msgstr "удаленный ответ"
+
+#: skins/default/templates/avatar/confirm_delete.html:5
+msgid "Please select the avatars that you would like to delete."
+msgstr ""
+
+#: skins/default/templates/avatar/confirm_delete.html:7
#, python-format
-msgid "responses for %(username)s"
-msgstr "ответы пользователю %(username)s"
+msgid ""
+"You have no avatars to delete. Please <a href=\"%(avatar_change_url)s"
+"\">upload one</a> now."
+msgstr ""
-#: skins/default/templates/blocks/header_meta_links.html:10
+#: skins/default/templates/avatar/confirm_delete.html:13
+#, fuzzy
+msgid "Delete These"
+msgstr "удаленный ответ"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:3
+msgid "answer tips"
+msgstr "Советы как лучше давать ответы"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:6
+msgid "please make your answer relevant to this community"
+msgstr ""
+"пожалуйÑта поÑтарайтеÑÑŒ дать ответ который будет интереÑен коллегам по форуму"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:9
+msgid "try to give an answer, rather than engage into a discussion"
+msgstr "поÑтарайтеÑÑŒ на Ñамом деле дать ответ и избегать диÑкуÑÑий"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:12
+msgid "please try to provide details"
+msgstr "включите детали в Ваш ответ"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:15
+#: skins/default/templates/blocks/question_edit_tips.html:11
+msgid "be clear and concise"
+msgstr "Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð´Ð¾Ð»Ð¶ÐµÐ½ быть четким и лаконичным"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:19
+#: skins/default/templates/blocks/question_edit_tips.html:15
+msgid "see frequently asked questions"
+msgstr "поÑмотрите на чаÑто задаваемые вопроÑÑ‹"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:25
+#: skins/default/templates/blocks/question_edit_tips.html:20
+msgid "Markdown tips"
+msgstr "ПоддерживаетÑÑ Ñзык разметки - Markdown"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:29
+#: skins/default/templates/blocks/question_edit_tips.html:24
+msgid "*italic*"
+msgstr "*курÑив*"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:32
+#: skins/default/templates/blocks/question_edit_tips.html:27
+msgid "**bold**"
+msgstr "**жирный**"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:36
+#: skins/default/templates/blocks/question_edit_tips.html:31
+msgid "*italic* or _italic_"
+msgstr "*курÑив* или _курÑив_"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:39
+#: skins/default/templates/blocks/question_edit_tips.html:34
+msgid "**bold** or __bold__"
+msgstr "**жирный шрифт** или __жирный шрифт__"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:43
+#: skins/default/templates/blocks/question_edit_tips.html:38
+msgid "link"
+msgstr "ÑÑылка"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:43
+#: skins/default/templates/blocks/answer_edit_tips.html:47
+#: skins/default/templates/blocks/question_edit_tips.html:38
+#: skins/default/templates/blocks/question_edit_tips.html:43
+msgid "text"
+msgstr "текÑÑ‚"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:47
+#: skins/default/templates/blocks/question_edit_tips.html:43
+msgid "image"
+msgstr "изображение"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:51
+#: skins/default/templates/blocks/question_edit_tips.html:47
+msgid "numbered list:"
+msgstr "пронумерованный ÑпиÑок:"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:56
+#: skins/default/templates/blocks/question_edit_tips.html:52
+msgid "basic HTML tags are also supported"
+msgstr "а также, поддерживаютÑÑ Ð¾Ñновные теги HTML"
+
+#: skins/default/templates/blocks/answer_edit_tips.html:60
+#: skins/default/templates/blocks/question_edit_tips.html:56
+msgid "learn more about Markdown"
+msgstr "узнайте болше про Markdown"
+
+#: skins/default/templates/blocks/ask_form.html:6
+msgid "login to post question info"
+msgstr ""
+"<span class=\"strong big\">ПожалуйÑта, начните задавать Ваш Ð²Ð¾Ñ€Ð¿Ð¾Ñ Ð°Ð½Ð¾Ð½Ð¸Ð¼Ð½Ð¾</"
+"span>. Когда Ð’Ñ‹ пошлете вопроÑ, Ð’Ñ‹ будете направлены на Ñтраницу "
+"авторизации. Ваш Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð±ÑƒÐ´ÐµÑ‚ Ñохранён в текущей ÑеÑÑии и будет опубликован "
+"как только Ð’Ñ‹ авторизуетеÑÑŒ. Войти или запиÑатьÑÑ Ð½Ð° наш форум очень легко. "
+"ÐÐ²Ñ‚Ð¾Ñ€Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð·Ð°Ð¹Ð¼ÐµÑ‚ не более полминуты а Ð¸Ð·Ð½Ð°Ñ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ - приблизительно "
+"одну минуту."
+
+#: skins/default/templates/blocks/ask_form.html:10
#, python-format
-msgid "you have a new response"
-msgid_plural "you nave %(response_count)s new responses"
-msgstr[0] "У Ð²Ð°Ñ Ð½Ð¾Ð²Ñ‹Ð¹ ответ"
-msgstr[1] "У Ð²Ð°Ñ %(response_count)s новых ответов"
-msgstr[2] "У Ð²Ð°Ñ %(response_count)s новых ответов"
+msgid ""
+"must have valid %(email)s to post, \n"
+" see %(email_validation_faq_url)s\n"
+" "
+msgstr ""
+"<span class=\"big strong\">Похоже на то что Ð°Ð´Ñ€ÐµÑ Ð’Ð°ÑˆÐµÐ¹ Ñлектронной почты, %"
+"(email)s еще не был проверен.</span> Чтобы публиковать ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð½Ð° форуме "
+"Ñначала пожалуйÑта продемонÑтрируйте что Ваша ÑÐ»ÐµÐºÑ‚Ñ€Ð¾Ð½Ð½Ð°Ñ Ð¿Ð¾Ñ‡Ñ‚Ð° работает, "
+"Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾Ð± етом <a href=\"%(email_validation_faq_url)s"
+"\">здеÑÑŒ</a>.<br/> Ваш Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð±ÑƒÐ´ÐµÑ‚ опубликован Ñразу поÑле того как ваш "
+"Ð°Ð´Ñ€ÐµÑ Ð±ÑƒÐ´ÐµÑ‚ проверен, а до тех пор Ð²Ð¾Ð¿Ð¾Ñ Ð±ÑƒÐ´ÐµÑ‚ Ñохранён в базе данных."
-#: skins/default/templates/blocks/header_meta_links.html:13
-msgid "no new responses yet"
-msgstr "новых ответов нет"
+#: skins/default/templates/blocks/ask_form.html:27
+msgid "Login/signup to post your question"
+msgstr "Войдите или запишитеÑÑŒ чтобы опубликовать Ваш ворпоÑ"
+
+#: skins/default/templates/blocks/ask_form.html:29
+msgid "Ask your question"
+msgstr "Задайте Ваш вопроÑ"
-#: skins/default/templates/blocks/header_meta_links.html:25
-#: skins/default/templates/blocks/header_meta_links.html:26
+#: skins/default/templates/blocks/editor_data.html:5
#, python-format
-msgid "%(new)s new flagged posts and %(seen)s previous"
-msgstr "%(new)s новых поÑтов Ñо Ñпамом и %(seen)s предыдущих"
+msgid "each tag must be shorter that %(max_chars)s character"
+msgid_plural "each tag must be shorter than %(max_chars)s characters"
+msgstr[0] "каждый тег должен быть короче %(max_chars)s Ñимвола"
+msgstr[1] "каждый тег должно быть короче чем %(max_chars)s Ñимвола"
+msgstr[2] "каждый тег должно быть короче чем %(max_chars)s Ñимволов"
-#: skins/default/templates/blocks/header_meta_links.html:28
-#: skins/default/templates/blocks/header_meta_links.html:29
+#: skins/default/templates/blocks/editor_data.html:7
#, python-format
-msgid "%(new)s new flagged posts"
-msgstr "%(new)s новых неумеÑтных Ñообщений"
+msgid "please use %(tag_count)s tag"
+msgid_plural "please use %(tag_count)s tags or less"
+msgstr[0] "пожалуйÑта, иÑпользуйте %(tag_count)s тег"
+msgstr[1] "пожалуйÑта введите не более %(tag_count)s тегов"
+msgstr[2] "пожалуйÑта введите не более %(tag_count)s тегов"
-#: skins/default/templates/blocks/header_meta_links.html:34
-#: skins/default/templates/blocks/header_meta_links.html:35
+#: skins/default/templates/blocks/editor_data.html:8
#, python-format
-msgid "%(seen)s flagged posts"
-msgstr "%(seen)s неумеÑтных Ñообщений"
+msgid ""
+"please use up to %(tag_count)s tags, less than %(max_chars)s characters each"
+msgstr ""
+"пожалуйÑта, иÑпользуйте до %(tag_count)s тегов, количеÑтво Ñимволов в каждом "
+"менее %(max_chars)s"
+
+#: skins/default/templates/blocks/footer.html:5
+#: skins/default/templates/blocks/header_meta_links.html:12
+msgid "about"
+msgstr "о наÑ"
+
+#: skins/default/templates/blocks/footer.html:7
+msgid "privacy policy"
+msgstr "политика конфиденциальноÑти"
+
+#: skins/default/templates/blocks/footer.html:16
+msgid "give feedback"
+msgstr "оÑтавить отзыв"
+
+#: skins/default/templates/blocks/header.html:8
+msgid "back to home page"
+msgstr "вернутьÑÑ Ð½Ð° главную"
+
+#: skins/default/templates/blocks/header.html:9
+#, python-format
+msgid "%(site)s logo"
+msgstr "логотип %(site)s"
+
+#: skins/default/templates/blocks/header.html:17
+msgid "questions"
+msgstr "вопроÑÑ‹"
+
+#: skins/default/templates/blocks/header.html:27
+msgid "users"
+msgstr "пользователи"
+
+#: skins/default/templates/blocks/header.html:32
+msgid "badges"
+msgstr "награды"
+
+#: skins/default/templates/blocks/header.html:37
+msgid "ask a question"
+msgstr "задать вопроÑ"
-#: skins/default/templates/blocks/header_meta_links.html:47
+#: skins/default/templates/blocks/header_meta_links.html:8
msgid "logout"
msgstr "Выход"
-#: skins/default/templates/blocks/header_meta_links.html:49
+#: skins/default/templates/blocks/header_meta_links.html:10
msgid "login"
msgstr "Вход"
-#: skins/default/templates/blocks/header_meta_links.html:54
+#: skins/default/templates/blocks/header_meta_links.html:15
msgid "settings"
msgstr "ÐаÑтройки"
-#: skins/default/templates/unused/email_base.html:8
-msgid "home"
-msgstr "ГлавнаÑ"
+#: skins/default/templates/blocks/input_bar.html:34
+msgid "search"
+msgstr "поиÑк"
+
+#: skins/default/templates/blocks/question_edit_tips.html:3
+msgid "question tips"
+msgstr "подÑказки к вопроÑам"
+
+#: skins/default/templates/blocks/question_edit_tips.html:5
+msgid "please ask a relevant question"
+msgstr "ваш Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð´Ð¾Ð»Ð¶ÐµÐ½ ÑоответÑтвовать тематике ÑообщеÑтва"
+
+#: skins/default/templates/blocks/question_edit_tips.html:8
+msgid "please try provide enough details"
+msgstr "поÑтарайтеÑÑŒ придать макÑимум информативноÑти Ñвоему вопроÑу"
+
+#: skins/default/templates/blocks/tag_selector.html:4
+msgid "Interesting tags"
+msgstr "Избранные теги"
+
+#: skins/default/templates/blocks/tag_selector.html:18
+#: skins/default/templates/blocks/tag_selector.html:34
+#: skins/default/templates/user_profile/user_moderate.html:38
+msgid "Add"
+msgstr "Добавить"
+
+#: skins/default/templates/blocks/tag_selector.html:20
+msgid "Ignored tags"
+msgstr "Игнорируемые теги"
+
+#: skins/default/templates/blocks/tag_selector.html:36
+#, fuzzy
+msgid "Display tag filter"
+msgstr "Выберите тип фильтра по темам (ключевым Ñловам)"
+
+#: skins/default/templates/main_page/content.html:13
+msgid "Did not find what you were looking for?"
+msgstr "Ðе нашли то, что иÑкали?"
+
+#: skins/default/templates/main_page/content.html:14
+msgid "Please, post your question!"
+msgstr "ПожалуйÑта, опубликуйте Ñвой вопроÑ!"
+
+#: skins/default/templates/main_page/headline.html:7
+msgid "subscribe to the questions feed"
+msgstr "подпиÑатьÑÑ Ð½Ð° RSS-канал Ð´Ð»Ñ Ð²Ð¾Ð¿Ñ€Ð¾Ñов"
+
+#: skins/default/templates/main_page/headline.html:8
+msgid "rss feed"
+msgstr "RSS-канал"
+
+#: skins/default/templates/main_page/headline.html:12 views/readers.py:120
+#, fuzzy, python-format
+msgid "%(q_num)s question, tagged"
+msgid_plural "%(q_num)s questions, tagged"
+msgstr[0] "%(q_num)s вопроÑ"
+msgstr[1] "%(q_num)s вопроÑа"
+msgstr[2] "%(q_num)s вопроÑов"
+
+#: skins/default/templates/main_page/headline.html:14 views/readers.py:128
+#, python-format
+msgid "%(q_num)s question"
+msgid_plural "%(q_num)s questions"
+msgstr[0] "%(q_num)s вопроÑ"
+msgstr[1] "%(q_num)s вопроÑа"
+msgstr[2] "%(q_num)s вопроÑов"
+
+#: skins/default/templates/main_page/headline.html:17
+#, python-format
+msgid "with %(author_name)s's contributions"
+msgstr "при помощи %(author_name)s"
+
+#: skins/default/templates/main_page/headline.html:28
+msgid "Search tips:"
+msgstr "Советы по поиÑку:"
+
+#: skins/default/templates/main_page/headline.html:31
+msgid "reset author"
+msgstr "ÑÐ±Ñ€Ð¾Ñ Ð°Ð²Ñ‚Ð¾Ñ€Ð°"
+
+#: skins/default/templates/main_page/headline.html:33
+#: skins/default/templates/main_page/headline.html:36
+#: skins/default/templates/main_page/nothing_found.html:18
+#: skins/default/templates/main_page/nothing_found.html:21
+msgid " or "
+msgstr "или"
-#: skins/default/templates/unused/notarobot.html:3
-msgid "Please prove that you are a Human Being"
-msgstr "Подтвердите что вы человек"
+#: skins/default/templates/main_page/headline.html:34
+msgid "reset tags"
+msgstr "ÑброÑить Ñ‚Ñги"
+
+#: skins/default/templates/main_page/headline.html:37
+#: skins/default/templates/main_page/headline.html:40
+msgid "start over"
+msgstr "начать вÑе Ñначала"
+
+#: skins/default/templates/main_page/headline.html:42
+msgid " - to expand, or dig in by adding more tags and revising the query."
+msgstr "- раÑширить или Ñузить, добавлÑÑ Ñвои метки и Ð¿Ð¾Ð»ÑƒÑ‡Ð°Ñ Ð·Ð°Ð¿Ñ€Ð¾Ñ."
-#: skins/default/templates/unused/notarobot.html:10
-msgid "I am a Human Being"
-msgstr "Я - Человек!"
+#: skins/default/templates/main_page/headline.html:45
+msgid "Search tip:"
+msgstr "ПодÑказки Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка:"
-#: skins/default/templates/unused/question_counter_widget.html:78
-msgid "Please decide if you like this question or not by voting"
+#: skins/default/templates/main_page/headline.html:45
+msgid "add tags and a query to focus your search"
+msgstr "добавить теги и выполнить поиÑк"
+
+#: skins/default/templates/main_page/javascript.html:13
+#: skins/default/templates/main_page/javascript.html:14
+msgid "mark-tag/"
+msgstr "pomechayem-temy/"
+
+#: skins/default/templates/main_page/javascript.html:13
+msgid "interesting/"
+msgstr "interesnaya/"
+
+#: skins/default/templates/main_page/javascript.html:14
+msgid "ignored/"
+msgstr "neinteresnaya/"
+
+#: skins/default/templates/main_page/javascript.html:15
+msgid "unmark-tag/"
+msgstr "otmenyaem-pometku-temy/"
+
+#: skins/default/templates/main_page/nothing_found.html:4
+msgid "There are no unanswered questions here"
+msgstr "Ðеотвеченных вопроÑов нет"
+
+#: skins/default/templates/main_page/nothing_found.html:7
+msgid "No favorite questions here. "
+msgstr "Отмеченных вопроÑов нет."
+
+#: skins/default/templates/main_page/nothing_found.html:8
+msgid "Please start (bookmark) some questions when you visit them"
msgstr ""
-"ПожалуйÑта, решите, еÑли вам нравитÑÑ Ñтот Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð¸Ð»Ð¸ нет путем голоÑованиÑ"
+"Ðачните добавлÑÑ‚ÑŒ в (закладки) некоторые вопроÑÑ‹, когда вы поÑещаете их"
-#: skins/default/templates/unused/question_counter_widget.html:84
-msgid ""
-"\n"
-" vote\n"
-" "
-msgid_plural ""
-"\n"
-" votes\n"
-" "
-msgstr[0] ""
-"\n"
-"голоÑ\n"
-" "
-msgstr[1] ""
-"\n"
-"голоÑа"
-msgstr[2] ""
-"\n"
-"голоÑов"
+#: skins/default/templates/main_page/nothing_found.html:13
+msgid "You can expand your search by "
+msgstr "Ð’Ñ‹ можете раÑширить поиÑк"
-#: skins/default/templates/unused/question_counter_widget.html:93
-#: skins/default/templates/unused/question_list.html:23
-#: skins/default/templates/unused/questions_ajax.html:27
-msgid "this answer has been accepted to be correct"
-msgstr "ответ был принÑÑ‚ как правильный"
+#: skins/default/templates/main_page/nothing_found.html:16
+msgid "resetting author"
+msgstr "ÑÐ±Ñ€Ð¾Ñ Ð°Ð²Ñ‚Ð¾Ñ€Ð°"
-#: skins/default/templates/unused/question_counter_widget.html:99
-msgid ""
-"\n"
-" answer \n"
-" "
-msgid_plural ""
-"\n"
-" answers \n"
-" "
-msgstr[0] ""
-"\n"
-"ответ\n"
-" "
-msgstr[1] ""
-"\n"
-"ответа"
-msgstr[2] ""
-"\n"
-"ответов"
+#: skins/default/templates/main_page/nothing_found.html:19
+msgid "resetting tags"
+msgstr "ÑÐ±Ñ€Ð¾Ñ Ñ‚Ñгов"
-#: skins/default/templates/unused/question_counter_widget.html:111
-msgid ""
-"\n"
-" view\n"
-" "
-msgid_plural ""
-"\n"
-" views\n"
-" "
-msgstr[0] ""
-"\n"
-"проÑмотр\n"
-" "
-msgstr[1] ""
-"\n"
-"проÑмотра"
-msgstr[2] ""
-"\n"
-"проÑмотров"
+#: skins/default/templates/main_page/nothing_found.html:22
+#: skins/default/templates/main_page/nothing_found.html:25
+msgid "starting over"
+msgstr "начать Ñначала"
-#: skins/default/templates/unused/question_list.html:15
-msgid ""
-"\n"
-" vote\n"
-" "
-msgid_plural ""
-"\n"
-" votes\n"
-" "
-msgstr[0] ""
-"\n"
-"голоÑ\n"
-" "
-msgstr[1] ""
-"\n"
-"голоÑа"
-msgstr[2] ""
-"\n"
-"голоÑов"
+#: skins/default/templates/main_page/nothing_found.html:30
+msgid "Please always feel free to ask your question!"
+msgstr "Ð’Ñ‹ вÑегда можете задать Ñвой вопроÑ!"
-#: skins/default/templates/unused/question_list.html:35
-msgid ""
-"\n"
-" answer \n"
-" "
-msgid_plural ""
-"\n"
-" answers \n"
-" "
-msgstr[0] ""
-"\n"
-"ответ\n"
-" "
-msgstr[1] ""
-"\n"
-"ответа"
-msgstr[2] ""
-"\n"
-"ответов"
+#: skins/default/templates/main_page/sidebar.html:5
+msgid "Contributors"
+msgstr "Ðвторы"
+
+#: skins/default/templates/main_page/sidebar.html:22
+msgid "Related tags"
+msgstr "СвÑзанные теги"
+
+#: skins/default/templates/main_page/tab_bar.html:5
+msgid "In:"
+msgstr "Ð’:"
+
+#: skins/default/templates/main_page/tab_bar.html:14
+msgid "see unanswered questions"
+msgstr "проÑмотреть неотвеченные ворпоÑÑ‹"
+
+#: skins/default/templates/main_page/tab_bar.html:20
+msgid "see your favorite questions"
+msgstr "проÑмотр отмеченные вопроÑÑ‹"
+
+#: skins/default/templates/main_page/tab_bar.html:25
+msgid "Sort by:"
+msgstr "УпорÑдочить по:"
+
+#: skins/default/templates/user_profile/user.html:13
+#, python-format
+msgid "%(username)s's profile"
+msgstr "профиль Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %(username)s"
+
+#: skins/default/templates/user_profile/user_edit.html:4
+msgid "Edit user profile"
+msgstr "Изменить профиль пользователÑ"
+
+#: skins/default/templates/user_profile/user_edit.html:7
+msgid "edit profile"
+msgstr "изменить профиль"
+
+#: skins/default/templates/user_profile/user_edit.html:17
+#: skins/default/templates/user_profile/user_info.html:15
+msgid "change picture"
+msgstr "изменить изображение"
+
+#: skins/default/templates/user_profile/user_edit.html:20
+msgid "Registered user"
+msgstr "ЗарегиÑтрированный пользователь"
+
+#: skins/default/templates/user_profile/user_edit.html:27
+msgid "Screen Name"
+msgstr "Ðазвание Ñкрана"
+
+#: skins/default/templates/user_profile/user_edit.html:83
+#: skins/default/templates/user_profile/user_email_subscriptions.html:21
+msgid "Update"
+msgstr "Обновить"
+
+#: skins/default/templates/user_profile/user_email_subscriptions.html:4
+#: skins/default/templates/user_profile/user_tabs.html:36
+msgid "subscriptions"
+msgstr "подпиÑки по email"
+
+#: skins/default/templates/user_profile/user_email_subscriptions.html:7
+msgid "Email subscription settings"
+msgstr "ÐаÑтройка подпиÑки по Ñлектронной почте"
+
+#: skins/default/templates/user_profile/user_email_subscriptions.html:8
+msgid "email subscription settings info"
+msgstr "Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ наÑтройках подпиÑки по Ñлектронной почте"
+
+#: skins/default/templates/user_profile/user_email_subscriptions.html:22
+msgid "Stop sending email"
+msgstr "ОÑтановить отправку Ñлектронной почты"
+
+#: skins/default/templates/user_profile/user_favorites.html:4
+#: skins/default/templates/user_profile/user_tabs.html:21
+msgid "favorites"
+msgstr "закладки"
+
+#: skins/default/templates/user_profile/user_inbox.html:18
+#: skins/default/templates/user_profile/user_tabs.html:12
+msgid "inbox"
+msgstr "входÑщие"
+
+#: skins/default/templates/user_profile/user_inbox.html:34
+msgid "Sections:"
+msgstr "Разделы:"
+
+#: skins/default/templates/user_profile/user_inbox.html:38
+#, python-format
+msgid "forum responses (%(re_count)s)"
+msgstr "ответы в форуме (%(re_count)s)"
+
+#: skins/default/templates/user_profile/user_inbox.html:43
+#, python-format
+msgid "flagged items (%(flag_count)s)"
+msgstr "помеченные пункты (%(flag_count)s)"
+
+#: skins/default/templates/user_profile/user_inbox.html:49
+msgid "select:"
+msgstr "выберите:"
+
+#: skins/default/templates/user_profile/user_inbox.html:51
+msgid "seen"
+msgstr "прочитанные"
+
+#: skins/default/templates/user_profile/user_inbox.html:52
+msgid "new"
+msgstr "новые"
+
+#: skins/default/templates/user_profile/user_inbox.html:53
+msgid "none"
+msgstr "нет"
+
+#: skins/default/templates/user_profile/user_inbox.html:54
+msgid "mark as seen"
+msgstr "отметить как прочитано "
+
+#: skins/default/templates/user_profile/user_inbox.html:55
+msgid "mark as new"
+msgstr "отметить как новое"
+
+#: skins/default/templates/user_profile/user_inbox.html:56
+msgid "dismiss"
+msgstr "удалить"
+
+#: skins/default/templates/user_profile/user_info.html:19
+#, fuzzy
+msgid "remove"
+msgstr "vosstanovleniye-accounta/"
+
+#: skins/default/templates/user_profile/user_info.html:33
+msgid "update profile"
+msgstr "обновить профиль"
+
+#: skins/default/templates/user_profile/user_info.html:37
+msgid "manage login methods"
+msgstr "управление методами входа"
+
+#: skins/default/templates/user_profile/user_info.html:50
+msgid "real name"
+msgstr "наÑтоÑщее имÑ"
+
+#: skins/default/templates/user_profile/user_info.html:55
+msgid "member for"
+msgstr "ÑоÑтоит пользователем"
+
+#: skins/default/templates/user_profile/user_info.html:60
+msgid "last seen"
+msgstr "поÑледнее поÑещение"
+
+#: skins/default/templates/user_profile/user_info.html:66
+msgid "user website"
+msgstr "Ñайт пользователÑ"
+
+#: skins/default/templates/user_profile/user_info.html:72
+msgid "location"
+msgstr "меÑтоположение"
+
+#: skins/default/templates/user_profile/user_info.html:79
+msgid "age"
+msgstr "возраÑÑ‚"
+
+#: skins/default/templates/user_profile/user_info.html:80
+msgid "age unit"
+msgstr "возраÑÑ‚"
+
+#: skins/default/templates/user_profile/user_info.html:87
+msgid "todays unused votes"
+msgstr "ÑегоднÑшних неиÑпользованных голоÑов"
+
+#: skins/default/templates/user_profile/user_info.html:88
+msgid "votes left"
+msgstr "оÑталоÑÑŒ голоÑов"
+
+#: skins/default/templates/user_profile/user_moderate.html:4
+#: skins/default/templates/user_profile/user_tabs.html:42
+msgid "moderation"
+msgstr "модерациÑ"
+
+#: skins/default/templates/user_profile/user_moderate.html:8
+#, python-format
+msgid "%(username)s's current status is \"%(status)s\""
+msgstr "пользователь %(username)s имеет ÑÑ‚Ð°Ñ‚ÑƒÑ \"%(status)s\""
+
+#: skins/default/templates/user_profile/user_moderate.html:11
+msgid "User status changed"
+msgstr "Ð¡Ñ‚Ð°Ñ‚ÑƒÑ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð·Ð¼ÐµÐ½Ð¸Ð»ÑÑ"
+
+#: skins/default/templates/user_profile/user_moderate.html:18
+msgid "Save"
+msgstr "Сохранить"
+
+#: skins/default/templates/user_profile/user_moderate.html:24
+#, python-format
+msgid "Your current reputation is %(reputation)s points"
+msgstr "Ваша Ñ‚ÐµÐºÑƒÑ‰Ð°Ñ ÐºÐ°Ñ€Ð¼Ð° %(reputation)s балов"
+
+#: skins/default/templates/user_profile/user_moderate.html:26
+#, python-format
+msgid "User's current reputation is %(reputation)s points"
+msgstr "Карма Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %(reputation)s балов "
+
+#: skins/default/templates/user_profile/user_moderate.html:30
+msgid "User reputation changed"
+msgstr "Карма Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð°"
+
+#: skins/default/templates/user_profile/user_moderate.html:37
+msgid "Subtract"
+msgstr "ОтнÑÑ‚ÑŒ"
+
+#: skins/default/templates/user_profile/user_moderate.html:42
+#, python-format
+msgid "Send message to %(username)s"
+msgstr "Отправить Ñообщение Ð´Ð»Ñ %(username)s"
-#: skins/default/templates/unused/question_list.html:47
+#: skins/default/templates/user_profile/user_moderate.html:43
msgid ""
-"\n"
-" view\n"
-" "
-msgid_plural ""
-"\n"
-" views\n"
-" "
-msgstr[0] ""
-"\n"
-"проÑмотр\n"
-" "
-msgstr[1] ""
-"\n"
-"проÑмотра"
-msgstr[2] ""
-"\n"
-"проÑмотров"
+"An email will be sent to the user with 'reply-to' field set to your email "
+"address. Please make sure that your address is entered correctly."
+msgstr ""
+"ПиÑьмо будет отправлено пользователю Ñо ÑÑылкой \"Ответить\" на ваш Ð°Ð´Ñ€ÐµÑ "
+"Ñлектронной почты. ПожалуйÑта, убедитеÑÑŒ, что ваш Ð°Ð´Ñ€ÐµÑ Ð²Ð²ÐµÐ´ÐµÐ½ правильно."
-#: skins/default/templates/unused/question_summary_list_roll.html:13
-msgid "answers"
-msgstr "ответы"
+#: skins/default/templates/user_profile/user_moderate.html:45
+msgid "Message sent"
+msgstr "Сообщение отправлено"
+
+#: skins/default/templates/user_profile/user_moderate.html:63
+msgid "Send message"
+msgstr "Отправить Ñообщение"
+
+#: skins/default/templates/user_profile/user_recent.html:4
+#: skins/default/templates/user_profile/user_tabs.html:25
+msgid "activity"
+msgstr "активноÑÑ‚ÑŒ"
+
+#: skins/default/templates/user_profile/user_reputation.html:4
+#, fuzzy
+msgid "karma"
+msgstr "карма:"
+
+#: skins/default/templates/user_profile/user_reputation.html:11
+msgid "Your karma change log."
+msgstr "ИÑÑ‚Ð¾Ñ€Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹ кармы."
+
+#: skins/default/templates/user_profile/user_reputation.html:13
+#, python-format
+msgid "%(user_name)s's karma change log"
+msgstr "ИÑÑ‚Ð¾Ñ€Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹ кармы Ð´Ð»Ñ %(user_name)s "
+
+#: skins/default/templates/user_profile/user_stats.html:5
+#: skins/default/templates/user_profile/user_tabs.html:7
+msgid "overview"
+msgstr "обзор"
+
+#: skins/default/templates/user_profile/user_stats.html:11
+#, python-format
+msgid "<span class=\"count\">%(counter)s</span> Question"
+msgid_plural "<span class=\"count\">%(counter)s</span> Questions"
+msgstr[0] "<span class=\"count\">1</span> ВопроÑ"
+msgstr[1] "<span class=\"count\">%(counter)s</span> ВопроÑов"
+msgstr[2] "<span class=\"count\">%(counter)s</span> ВопроÑа"
+
+#: skins/default/templates/user_profile/user_stats.html:16
+#, python-format
+msgid "<span class=\"count\">%(counter)s</span> Answer"
+msgid_plural "<span class=\"count\">%(counter)s</span> Answers"
+msgstr[0] "<span class=\"count\">1</span> Ответ"
+msgstr[1] "<span class=\"count\">%(counter)s</span> Ответов"
+msgstr[2] "<span class=\"count\">%(counter)s</span> Ответа"
+
+#: skins/default/templates/user_profile/user_stats.html:24
+#, python-format
+msgid "the answer has been voted for %(answer_score)s times"
+msgstr "за ответ проголоÑовали %(answer_score)s раз"
+
+#: skins/default/templates/user_profile/user_stats.html:24
+msgid "this answer has been selected as correct"
+msgstr "Ñтот ответ был выбран в качеÑтве правильного"
+
+#: skins/default/templates/user_profile/user_stats.html:34
+#, python-format
+msgid "(%(comment_count)s comment)"
+msgid_plural "the answer has been commented %(comment_count)s times"
+msgstr[0] "(один комментарий)"
+msgstr[1] "ответ был прокомментирован %(comment_count)s раз"
+msgstr[2] "ответ был прокомментирован %(comment_count)s раза"
+
+#: skins/default/templates/user_profile/user_stats.html:44
+#, python-format
+msgid "<span class=\"count\">%(cnt)s</span> Vote"
+msgid_plural "<span class=\"count\">%(cnt)s</span> Votes "
+msgstr[0] "<span class=\"count\">1</span> ГолоÑ"
+msgstr[1] "<span class=\"count\">%(cnt)s</span> ГолоÑов"
+msgstr[2] "<span class=\"count\">%(cnt)s</span> ГолоÑа"
+
+#: skins/default/templates/user_profile/user_stats.html:50
+msgid "thumb up"
+msgstr "Ñ \"за\""
+
+#: skins/default/templates/user_profile/user_stats.html:51
+msgid "user has voted up this many times"
+msgstr "пользователь проголоÑовал \"за\" много раз"
+
+#: skins/default/templates/user_profile/user_stats.html:54
+msgid "thumb down"
+msgstr "Ñ \"против\""
+
+#: skins/default/templates/user_profile/user_stats.html:55
+msgid "user voted down this many times"
+msgstr "пользователь проголоÑовал \"против\" много раз"
+
+#: skins/default/templates/user_profile/user_stats.html:63
+#, python-format
+msgid "<span class=\"count\">%(counter)s</span> Tag"
+msgid_plural "<span class=\"count\">%(counter)s</span> Tags"
+msgstr[0] "<span class=\"count\">1</span> Тег"
+msgstr[1] "<span class=\"count\">%(counter)s</span> Тегов"
+msgstr[2] "<span class=\"count\">%(counter)s</span> Тега"
+
+#: skins/default/templates/user_profile/user_stats.html:99
+#, python-format
+msgid "<span class=\"count\">%(counter)s</span> Badge"
+msgid_plural "<span class=\"count\">%(counter)s</span> Badges"
+msgstr[0] "<span class=\"count\">%(counter)s</span> Медаль"
+msgstr[1] "<span class=\"count\">%(counter)s</span> Медали"
+msgstr[2] "<span class=\"count\">%(counter)s</span> Медалей"
+
+#: skins/default/templates/user_profile/user_tabs.html:5
+msgid "User profile"
+msgstr "Профиль пользователÑ"
+
+#: skins/default/templates/user_profile/user_tabs.html:10 views/users.py:731
+msgid "comments and answers to others questions"
+msgstr "комментарии и ответы на другие вопроÑÑ‹"
+
+#: skins/default/templates/user_profile/user_tabs.html:15
+msgid "graph of user reputation"
+msgstr "график кармы"
+
+#: skins/default/templates/user_profile/user_tabs.html:17
+msgid "reputation history"
+msgstr "иÑÑ‚Ð¾Ñ€Ð¸Ñ ÐºÐ°Ñ€Ð¼Ñ‹"
+
+#: skins/default/templates/user_profile/user_tabs.html:19
+msgid "questions that user selected as his/her favorite"
+msgstr "ВопроÑÑ‹, выбранные пользователем в закладки"
+
+#: skins/default/templates/user_profile/user_tabs.html:23
+msgid "recent activity"
+msgstr "поÑледнÑÑ Ð°ÐºÑ‚Ð¸Ð²Ð½Ð¾ÑÑ‚ÑŒ"
+
+#: skins/default/templates/user_profile/user_tabs.html:28 views/users.py:795
+msgid "user vote record"
+msgstr "Ð³Ð¾Ð»Ð¾Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ"
-#: skins/default/templates/unused/question_summary_list_roll.html:14
+#: skins/default/templates/user_profile/user_tabs.html:30
+msgid "casted votes"
+msgstr "поданные голоÑа"
+
+#: skins/default/templates/user_profile/user_tabs.html:34 views/users.py:901
+msgid "email subscription settings"
+msgstr "наÑтройки подпиÑки по Ñлектронной почте"
+
+#: skins/default/templates/user_profile/user_tabs.html:40 views/users.py:214
+msgid "moderate this user"
+msgstr "Модерировать Ñтого пользователÑ"
+
+#: skins/default/templates/user_profile/user_votes.html:4
msgid "votes"
msgstr "голоÑов"
-#: skins/default/templates/unused/question_summary_list_roll.html:15
-msgid "views"
-msgstr "проÑмотров"
+#: skins/default/templates/user_profile/users_questions.html:9
+#: skins/default/templates/user_profile/users_questions.html:17
+#, python-format
+msgid "this questions was selected as favorite %(cnt)s time"
+msgid_plural "this questions was selected as favorite %(cnt)s times"
+msgstr[0] "Ñтот Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð±Ñ‹Ð» добавлен в закладки %(cnt)s раз"
+msgstr[1] "Ñти вопроÑÑ‹ были добавлены в закладки %(cnt)s раз"
+msgstr[2] "Ñти вопроÑÑ‹ были добавлены в закладки %(cnt)s раз"
+
+#: skins/default/templates/user_profile/users_questions.html:10
+msgid "thumb-up on"
+msgstr "Ñ \"за\""
+
+#: skins/default/templates/user_profile/users_questions.html:18
+msgid "thumb-up off"
+msgstr "Ñ \"против\""
-#: templatetags/extra_filters.py:168 templatetags/extra_filters_jinja.py:234
+#: templatetags/extra_filters.py:145 templatetags/extra_filters_jinja.py:227
msgid "no items in counter"
msgstr "нет"
-#: utils/decorators.py:82 views/commands.py:132 views/commands.py:149
+#: utils/decorators.py:82 views/commands.py:112 views/commands.py:132
msgid "Oops, apologies - there was some error"
msgstr "Извините, произошла ошибка!"
@@ -5371,58 +5712,76 @@ msgstr[0] "%(min)d минуту назад"
msgstr[1] "%(min)d минут назад"
msgstr[2] "%(min)d минуты назад"
-#: views/commands.py:42
+#: views/avatar_views.py:96
+msgid "Successfully uploaded a new avatar."
+msgstr ""
+
+#: views/avatar_views.py:137
+msgid "Successfully updated your avatar."
+msgstr ""
+
+#: views/avatar_views.py:177
+msgid "Successfully deleted the requested avatars."
+msgstr ""
+
+#: views/commands.py:39
msgid "anonymous users cannot vote"
msgstr "неавторизированные пользователи не могут голоÑовать "
-#: views/commands.py:62
+#: views/commands.py:59
msgid "Sorry you ran out of votes for today"
msgstr "Извините, вы иÑчерпали лимит голоÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð·Ð° ÑегоднÑ"
-#: views/commands.py:68
+#: views/commands.py:65
#, python-format
msgid "You have %(votes_left)s votes left for today"
msgstr "Ð’Ñ‹ можете голоÑовать ÑÐµÐ³Ð¾Ð´Ð½Ñ ÐµÑ‰Ñ‘ %(votes_left)s раз"
-#: views/commands.py:139
+#: views/commands.py:122
msgid "Sorry, but anonymous users cannot access the inbox"
msgstr "неавторизированные пользователи не имеют доÑтупа к папке \"входÑщие\""
-#: views/commands.py:209
+#: views/commands.py:192
msgid "Sorry, something is not right here..."
msgstr "Извините, что-то не здеÑÑŒ..."
-#: views/commands.py:224
+#: views/commands.py:207
msgid "Sorry, but anonymous users cannot accept answers"
msgstr ""
"неавторизированные пользователи не могут отмечать ответы как правильные"
-#: views/commands.py:305
+#: views/commands.py:288
#, python-format
msgid "subscription saved, %(email)s needs validation, see %(details_url)s"
msgstr "подпиÑка Ñохранена, %(email)s требует проверки, Ñм. %(details_url)s"
-#: views/commands.py:313
+#: views/commands.py:296
msgid "email update frequency has been set to daily"
msgstr "чаÑтота обновлений по email была уÑтановлена в ежедневную"
-#: views/commands.py:371
-msgid "Bad request"
-msgstr "неверный запроÑ"
+#: views/commands.py:401
+#, python-format
+msgid "Tag subscription was canceled (<a href=\"%(url)s\">undo</a>)."
+msgstr ""
+
+#: views/commands.py:410
+#, fuzzy, python-format
+msgid "Please sign in to subscribe for: %(tags)s"
+msgstr "ПожалуйÑта, войдите здеÑÑŒ:"
-#: views/meta.py:59
+#: views/meta.py:65
msgid "Q&A forum feedback"
msgstr "ÐžÐ±Ñ€Ð°Ñ‚Ð½Ð°Ñ ÑвÑзь"
-#: views/meta.py:60
+#: views/meta.py:66
msgid "Thanks for the feedback!"
msgstr "СпаÑибо за отзыв!"
-#: views/meta.py:70
+#: views/meta.py:74
msgid "We look forward to hearing your feedback! Please, give it next time :)"
msgstr "Мы Ñ Ð½ÐµÑ‚ÐµÑ€Ð¿ÐµÐ½Ð¸ÐµÐ¼ ждем ваших отзывов!"
-#: views/readers.py:188
+#: views/readers.py:166
#, python-format
msgid "%(badge_count)d %(badge_level)s badge"
msgid_plural "%(badge_count)d %(badge_level)s badges"
@@ -5430,88 +5789,88 @@ msgstr[0] "%(badge_count)d %(badge_level)s медаль"
msgstr[1] "%(badge_count)d %(badge_level)s медали"
msgstr[2] "%(badge_count)d %(badge_level)s медалей"
-#: views/readers.py:425
+#: views/readers.py:390
msgid ""
"Sorry, the comment you are looking for has been deleted and is no longer "
"accessible"
msgstr "Извините, но запрашиваемый комментарий был удалён"
-#: views/users.py:217
+#: views/users.py:215
msgid "moderate user"
msgstr "модерировать пользователÑ"
-#: views/users.py:376
+#: views/users.py:380
msgid "user profile"
msgstr "профиль пользователÑ"
-#: views/users.py:377
+#: views/users.py:381
msgid "user profile overview"
msgstr "обзор Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ"
-#: views/users.py:661
+#: views/users.py:664
msgid "recent user activity"
msgstr "поÑледние данные по активноÑти пользователÑ"
-#: views/users.py:662
+#: views/users.py:665
msgid "profile - recent activity"
msgstr "профиль - поÑледние данные по активноÑти"
-#: views/users.py:730
+#: views/users.py:732
msgid "profile - responses"
msgstr "профиль - ответы"
-#: views/users.py:795
+#: views/users.py:796
msgid "profile - votes"
msgstr "профиль - голоÑа"
-#: views/users.py:833
+#: views/users.py:831
msgid "user reputation in the community"
msgstr "карма Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð² ÑообщеÑтве"
-#: views/users.py:834
+#: views/users.py:832
msgid "profile - user reputation"
msgstr "профиль - карма пользователÑ"
-#: views/users.py:862
+#: views/users.py:859
msgid "users favorite questions"
msgstr "избранные вопроÑÑ‹ пользователей"
-#: views/users.py:863
+#: views/users.py:860
msgid "profile - favorite questions"
msgstr "профиль - избранные вопроÑÑ‹"
-#: views/users.py:883 views/users.py:887
+#: views/users.py:880 views/users.py:884
msgid "changes saved"
msgstr "Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñохранены"
-#: views/users.py:893
+#: views/users.py:890
msgid "email updates canceled"
msgstr "Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¾ email отменены"
-#: views/users.py:905
+#: views/users.py:902
msgid "profile - email subscriptions"
msgstr "профиль - email подпиÑки"
-#: views/writers.py:56
+#: views/writers.py:57
msgid "Sorry, anonymous users cannot upload files"
msgstr "неавторизированные пользователи не могут загружать файлы"
-#: views/writers.py:65
+#: views/writers.py:67
#, python-format
msgid "allowed file types are '%(file_types)s'"
msgstr "допуÑтимые типы файлов: '%(file_types)s'"
-#: views/writers.py:88
+#: views/writers.py:90
#, python-format
msgid "maximum upload file size is %(file_size)sK"
msgstr "макÑимальный размер загружаемого файла - %(file_size)s K"
-#: views/writers.py:96
+#: views/writers.py:98
msgid "Error uploading file. Please contact the site administrator. Thank you."
msgstr ""
"Ошибка при загрузке файла. ПожалуйÑта, ÑвÑжитеÑÑŒ Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтрацией Ñайта."
-#: views/writers.py:452
+#: views/writers.py:563
#, python-format
msgid ""
"Sorry, you appear to be logged out and cannot post comments. Please <a href="
@@ -5520,11 +5879,11 @@ msgstr ""
"Извините, вы не вошли, поÑтому не можете оÑтавлÑÑ‚ÑŒ комментарии. <a href=\"%"
"(sign_in_url)s\">Войдите</a>."
-#: views/writers.py:497
+#: views/writers.py:608
msgid "Sorry, anonymous users cannot edit comments"
msgstr "неавторизированные пользователи не могут иÑправлÑÑ‚ÑŒ комментарии"
-#: views/writers.py:505
+#: views/writers.py:616
#, python-format
msgid ""
"Sorry, you appear to be logged out and cannot delete comments. Please <a "
@@ -5533,10 +5892,262 @@ msgstr ""
"Извините, вы не вошли, поÑтому не можете удалÑÑ‚ÑŒ комментарии. <a href=\"%"
"(sign_in_url)s\">Войдите</a>."
-#: views/writers.py:526
+#: views/writers.py:637
msgid "sorry, we seem to have some technical difficulties"
msgstr "Извините, у Ð½Ð°Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»Ñ‘Ð½Ð½Ñ‹Ðµ техничеÑкие проблемы."
+#~ msgid "community wiki"
+#~ msgstr "вики ÑообщеÑтва"
+
+#~ msgid "Location"
+#~ msgstr "МеÑтоположение"
+
+#~ msgid "command/"
+#~ msgstr "komanda/"
+
+#~ msgid "search/"
+#~ msgstr "poisk/"
+
+#~ msgid "Check if you want to show the footer on each forum page"
+#~ msgstr ""
+#~ "Отметьте, еÑли вы хотите, чтобы подвал отображалÑÑ Ð½Ð° каждой Ñтранице "
+#~ "форума"
+
+#~ msgid "allow only selected tags"
+#~ msgstr "включить только выбранные Ñ‚Ñги"
+
+#~ msgid "less answers"
+#~ msgstr "меньше ответов"
+
+#~ msgid "more answers"
+#~ msgstr "кол-ву ответов"
+
+#~ msgid "unpopular"
+#~ msgstr "непопулÑрный"
+
+#~ msgid "popular"
+#~ msgstr "популÑрные"
+
+#~ msgid "MyOpenid user name"
+#~ msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð² MyOpenid"
+
+#~ msgid "Email verification subject line"
+#~ msgstr "Тема ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð²ÐµÑ€Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ð¸ email"
+
+#~ msgid "Posted 10 comments"
+#~ msgstr "РазмеÑтил 10 комментариев"
+
+#~ msgid "About"
+#~ msgstr "О наÑ"
+
+#~ msgid ""
+#~ "must have valid %(email)s to post, \n"
+#~ " see %(email_validation_faq_url)s\n"
+#~ " "
+#~ msgstr ""
+#~ "Ð´Ð»Ñ Ð¿ÑƒÐ±Ð»Ð¸ÐºÐ°Ñ†Ð¸Ð¸ %(email)s должен быть дейÑтвительным, Ñм. %"
+#~ "(email_validation_faq_url)s"
+
+#~ msgid "how to validate email title"
+#~ msgstr "как проверить заголовок Ñлектронного ÑообщениÑ"
+
+#~ msgid ""
+#~ "how to validate email info with %(send_email_key_url)s %(gravatar_faq_url)"
+#~ "s"
+#~ msgstr ""
+#~ "как проверить Ñлектронную почту Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ %(send_email_key_url)s %"
+#~ "(gravatar_faq_url)s"
+
+#~ msgid "."
+#~ msgstr "."
+
+#~ msgid ""
+#~ "As a registered user you can login with your OpenID, log out of the site "
+#~ "or permanently remove your account."
+#~ msgstr ""
+#~ "Как зарегиÑтрированный пользователь Ð’Ñ‹ можете Войти Ñ OpenID, выйти из "
+#~ "Ñайта или удалить Ñвой аккаунт."
+
+#~ msgid "Logout now"
+#~ msgstr "Выйти ÑейчаÑ"
+
+#~ msgid "see questions tagged '%(tag_name)s'"
+#~ msgstr "Ñм. вопроÑÑ‹ Ñ Ñ‚ÐµÐ³Ð°Ð¼Ð¸ '%(tag_name)s'"
+
+#~ msgid ""
+#~ "\n"
+#~ " %(q_num)s question\n"
+#~ " "
+#~ msgid_plural ""
+#~ "\n"
+#~ " %(q_num)s questions\n"
+#~ " "
+#~ msgstr[0] ""
+#~ "\n"
+#~ "%(q_num)s ответ:"
+#~ msgstr[1] ""
+#~ "\n"
+#~ "%(q_num)s ответа:"
+#~ msgstr[2] ""
+#~ "\n"
+#~ "%(q_num)s ответов:"
+
+#~ msgid "tagged"
+#~ msgstr "помеченный"
+
+#~ msgid "remove '%(tag_name)s' from the list of interesting tags"
+#~ msgstr "удалить '%(tag_name)s' из ÑпиÑка интереÑных тегов"
+
+#~ msgid "remove '%(tag_name)s' from the list of ignored tags"
+#~ msgstr "удалить '%(tag_name)s' из ÑпиÑка игнорируемых тегов"
+
+#~ msgid "keep ignored questions hidden"
+#~ msgstr "Ñкрыть игнорируемые вопроÑÑ‹"
+
+#~ msgid ""
+#~ "see other questions with %(view_user)s's contributions tagged '%(tag_name)"
+#~ "s' "
+#~ msgstr ""
+#~ "Ñм. другие вопроÑÑ‹, в которых еÑÑ‚ÑŒ вклад от %(view_user)s, отмеченные "
+#~ "тегом '%(tag_name)s'"
+
+#~ msgid "home"
+#~ msgstr "ГлавнаÑ"
+
+#~ msgid "Please prove that you are a Human Being"
+#~ msgstr "Подтвердите что вы человек"
+
+#~ msgid "I am a Human Being"
+#~ msgstr "Я - Человек!"
+
+#~ msgid "Please decide if you like this question or not by voting"
+#~ msgstr ""
+#~ "ПожалуйÑта, решите, еÑли вам нравитÑÑ Ñтот Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð¸Ð»Ð¸ нет путем "
+#~ "голоÑованиÑ"
+
+#~ msgid ""
+#~ "\n"
+#~ " vote\n"
+#~ " "
+#~ msgid_plural ""
+#~ "\n"
+#~ " votes\n"
+#~ " "
+#~ msgstr[0] ""
+#~ "\n"
+#~ "голоÑ\n"
+#~ " "
+#~ msgstr[1] ""
+#~ "\n"
+#~ "голоÑа"
+#~ msgstr[2] ""
+#~ "\n"
+#~ "голоÑов"
+
+#~ msgid "this answer has been accepted to be correct"
+#~ msgstr "ответ был принÑÑ‚ как правильный"
+
+#~ msgid ""
+#~ "\n"
+#~ " answer \n"
+#~ " "
+#~ msgid_plural ""
+#~ "\n"
+#~ " answers \n"
+#~ " "
+#~ msgstr[0] ""
+#~ "\n"
+#~ "ответ\n"
+#~ " "
+#~ msgstr[1] ""
+#~ "\n"
+#~ "ответа"
+#~ msgstr[2] ""
+#~ "\n"
+#~ "ответов"
+
+#~ msgid ""
+#~ "\n"
+#~ " view\n"
+#~ " "
+#~ msgid_plural ""
+#~ "\n"
+#~ " views\n"
+#~ " "
+#~ msgstr[0] ""
+#~ "\n"
+#~ "проÑмотр\n"
+#~ " "
+#~ msgstr[1] ""
+#~ "\n"
+#~ "проÑмотра"
+#~ msgstr[2] ""
+#~ "\n"
+#~ "проÑмотров"
+
+#~ msgid ""
+#~ "\n"
+#~ " vote\n"
+#~ " "
+#~ msgid_plural ""
+#~ "\n"
+#~ " votes\n"
+#~ " "
+#~ msgstr[0] ""
+#~ "\n"
+#~ "голоÑ\n"
+#~ " "
+#~ msgstr[1] ""
+#~ "\n"
+#~ "голоÑа"
+#~ msgstr[2] ""
+#~ "\n"
+#~ "голоÑов"
+
+#~ msgid ""
+#~ "\n"
+#~ " answer \n"
+#~ " "
+#~ msgid_plural ""
+#~ "\n"
+#~ " answers \n"
+#~ " "
+#~ msgstr[0] ""
+#~ "\n"
+#~ "ответ\n"
+#~ " "
+#~ msgstr[1] ""
+#~ "\n"
+#~ "ответа"
+#~ msgstr[2] ""
+#~ "\n"
+#~ "ответов"
+
+#~ msgid ""
+#~ "\n"
+#~ " view\n"
+#~ " "
+#~ msgid_plural ""
+#~ "\n"
+#~ " views\n"
+#~ " "
+#~ msgstr[0] ""
+#~ "\n"
+#~ "проÑмотр\n"
+#~ " "
+#~ msgstr[1] ""
+#~ "\n"
+#~ "проÑмотра"
+#~ msgstr[2] ""
+#~ "\n"
+#~ "проÑмотров"
+
+#~ msgid "views"
+#~ msgstr "проÑмотров"
+
+#~ msgid "Bad request"
+#~ msgstr "неверный запроÑ"
+
#~ msgid "disciplined"
#~ msgstr "диÑциплина"
@@ -5707,15 +6318,9 @@ msgstr "Извините, у Ð½Ð°Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»Ñ‘Ð½Ð½Ñ‹Ðµ техничеÑкÐ
#~ msgid "Active in many different tags"
#~ msgstr "ÐктивноÑÑ‚ÑŒ в различных тегах"
-#~ msgid "Expert"
-#~ msgstr "ЭкÑперт"
-
#~ msgid "expert"
#~ msgstr "ÑкÑперт"
-#~ msgid "Very active in one tag"
-#~ msgstr "Очень активны в одном теге"
-
#~ msgid "Yearling"
#~ msgstr "Годовщина"
@@ -5759,21 +6364,12 @@ msgstr "Извините, у Ð½Ð°Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»Ñ‘Ð½Ð½Ñ‹Ðµ техничеÑкÐ
#~ msgid "Answered a question more than 60 days later with at least 5 votes"
#~ msgstr "Ответ на Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð±Ð¾Ð»ÐµÐµ чем 60 дней ÑпуÑÑ‚Ñ Ñ Ð¼Ð¸Ð½Ð¸Ð¼ÑƒÐ¼ 5 голоÑами"
-#~ msgid "Taxonomist"
-#~ msgstr "ТакÑономиÑÑ‚"
-
#~ msgid "taxonomist"
#~ msgstr "такÑономиÑÑ‚"
-#~ msgid "Created a tag used by 50 questions"
-#~ msgstr "Создал тег, иÑпользованный в 50 вопроÑах"
-
#~ msgid "Askbot"
#~ msgstr "Askbot"
-#~ msgid "Please, sign in or Join askbot!"
-#~ msgstr "ПожалуйÑта, войдите здеÑÑŒ:"
-
#~ msgid "reputation points"
#~ msgstr "очки кармы"
@@ -5938,28 +6534,12 @@ msgstr "Извините, у Ð½Ð°Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»Ñ‘Ð½Ð½Ñ‹Ðµ техничеÑкÐ
#~ msgid "Change openid associated to your account"
#~ msgstr "Изменить OpenID ÑвÑзанный Ñ Ð²Ð°ÑˆÐ¸Ð¼ аккаунтом"
-#~ msgid "Delete account"
-#~ msgstr "Удалить аккаунт"
-
#~ msgid "Erase your username and all your data from website"
#~ msgstr "Удалить Ваше Ð¸Ð¼Ñ Ð¸ вÑе данные о Ð’Ð°Ñ Ð½Ð° Ñайте"
#~ msgid "toggle preview"
#~ msgstr "включить/выключить предварительный проÑмотр"
-#~ msgid ""
-#~ "must have valid %(email)s to post, \n"
-#~ " see %(email_validation_faq_url)s\n"
-#~ " "
-#~ msgstr ""
-#~ "<span class=\"big strong\">Похоже на то что Ð°Ð´Ñ€ÐµÑ Ð’Ð°ÑˆÐµÐ¹ Ñлектронной "
-#~ "почты, %(email)s еще не был проверен.</span> Чтобы публиковать ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ "
-#~ "на форуме Ñначала пожалуйÑта продемонÑтрируйте что Ваша ÑÐ»ÐµÐºÑ‚Ñ€Ð¾Ð½Ð½Ð°Ñ Ð¿Ð¾Ñ‡Ñ‚Ð° "
-#~ "работает, Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾Ð± етом <a href=\"%"
-#~ "(email_validation_faq_url)s\">здеÑÑŒ</a>.<br/> Ваш Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð±ÑƒÐ´ÐµÑ‚ "
-#~ "опубликован Ñразу поÑле того как ваш Ð°Ð´Ñ€ÐµÑ Ð±ÑƒÐ´ÐµÑ‚ проверен, а до тех пор "
-#~ "Ð²Ð¾Ð¿Ð¾Ñ Ð±ÑƒÐ´ÐµÑ‚ Ñохранён в базе данных."
-
#~ msgid "reading channel"
#~ msgstr "чтение каналов"
@@ -6077,9 +6657,6 @@ msgstr "Извините, у Ð½Ð°Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»Ñ‘Ð½Ð½Ñ‹Ðµ техничеÑкÐ
#~ msgid "Open the previously closed question"
#~ msgstr "Открыть ранее закрытый вопроÑ"
-#~ msgid "The question was closed for the following reason "
-#~ msgstr "Ð’Ð¾Ð¿Ñ€Ð¾Ñ Ð±Ñ‹Ð» закрыт по Ñледующим причинам"
-
#~ msgid "reason - leave blank in english"
#~ msgstr "причина - оÑтавить пуÑтым на английÑком Ñзыке"
diff --git a/askbot/management/__init__.py b/askbot/management/__init__.py
index 1e2b2aaf..6dc50083 100644
--- a/askbot/management/__init__.py
+++ b/askbot/management/__init__.py
@@ -61,6 +61,7 @@ class NoArgsJob(NoArgsCommand):
total_count = batch['query_set'].count()
if total_count == 0:
+ transaction.commit()
return
for item in batch['query_set'].all():
diff --git a/askbot/management/commands/fix_inbox_counts.py b/askbot/management/commands/fix_inbox_counts.py
index c2ffffdc..fc1a37d1 100644
--- a/askbot/management/commands/fix_inbox_counts.py
+++ b/askbot/management/commands/fix_inbox_counts.py
@@ -1,35 +1,22 @@
from askbot.management import NoArgsJob
from askbot import models
-from askbot import const
-
-ACTIVITY_TYPES = const.RESPONSE_ACTIVITY_TYPES_FOR_DISPLAY
-ACTIVITY_TYPES += (const.TYPE_ACTIVITY_MENTION,)
def fix_inbox_counts(user):
+ """a unit of job - returns True if change was made
+ and False otherwise
+ """
old_new_count = user.new_response_count
old_seen_count = user.seen_response_count
- new_new_count = models.ActivityAuditStatus.objects.filter(
- user = user,
- status = models.ActivityAuditStatus.STATUS_NEW,
- activity__activity_type__in = ACTIVITY_TYPES
- ).count()
- new_seen_count = models.ActivityAuditStatus.objects.filter(
- user = user,
- status = models.ActivityAuditStatus.STATUS_SEEN,
- activity__activity_type__in = ACTIVITY_TYPES
- ).count()
+
+ user.update_response_counts()
(changed1, changed2) = (False, False)
- if new_new_count != old_new_count:
- user.new_response_count = new_new_count
+ if user.new_response_count != old_new_count:
changed1 = True
- if new_seen_count != old_seen_count:
- user.seen_response_count = new_seen_count
+ if user.seen_response_count != old_seen_count:
changed2 = True
- if changed1 or changed2:
- user.save()
- return True
- return False
+
+ return (changed1 or changed2)
class Command(NoArgsJob):
"""definition of the job that fixes response counts
diff --git a/askbot/management/commands/initialize_ldap_logins.py b/askbot/management/commands/initialize_ldap_logins.py
new file mode 100644
index 00000000..96ee74e5
--- /dev/null
+++ b/askbot/management/commands/initialize_ldap_logins.py
@@ -0,0 +1,68 @@
+"""Management command to create LDAP login method for all users.
+Please see description of the command in its ``help_text``.
+"""
+import datetime
+from django.core.management.base import CommandError
+from django.utils.translation import ugettext as _
+from askbot.management import NoArgsJob
+from askbot import models
+from askbot.deps.django_authopenid.models import UserAssociation
+from askbot.conf import settings as askbot_settings
+
+def create_ldap_login_for_user(user):
+ """a unit job that creates LDAP account record for
+ the user, assuming that his or her LDAP user name
+ is the same as the user name on the forum site.
+ If the record already exists, LDAP provider name
+ will be updated according to the live setting,
+ otherwise a new record will be created.
+ Always returns ``True``.
+ """
+ ldap_url = askbot_settings.LDAP_URL
+ ldap_provider_name = askbot_settings.LDAP_PROVIDER_NAME
+ if '' in (ldap_url, ldap_provider_name):
+ raise CommandError(
+ 'Please, first set up LDAP settings '
+ 'at url /settings/EXTERNAL_KEYS,'
+ 'relative to the base url of your forum site'
+ )
+ try:
+ assoc = UserAssociation.objects.get(
+ openid_url = user.username,
+ user = user
+ )
+ except UserAssociation.DoesNotExist:
+ assoc = UserAssociation(
+ openid_url = user.username,
+ user = user
+ )
+ assoc.provider_name = ldap_provider_name
+ assoc.last_used_timestamp = datetime.datetime.now()
+ assoc.save()
+ return True
+
+class Command(NoArgsJob):
+ """definition of the job that
+ runs through all users and creates LDAP login
+ methods, assuming that LDAP user ID's are the same
+ as values ``~askbot.User.username``
+ """
+ help = _(
+ 'This command may help you migrate to LDAP '
+ 'password authentication by creating a record '
+ 'for LDAP association with each user account. '
+ 'There is an assumption that ldap user id\'s are '
+ 'the same as user names registered at the site. '
+ 'Before running this command it is necessary to '
+ 'set up LDAP parameters in the "External keys" section '
+ 'of the site settings.'
+ )
+ def __init__(self, *args, **kwargs):
+ self.batches = ({
+ 'title': 'Initializing LDAP logins for all users: ',
+ 'query_set': models.User.objects.all(),
+ 'function': create_ldap_login_for_user,
+ 'changed_count_message': 'Created LDAP logins for %d users',
+ 'nothing_changed_message': 'All users already have LDAP login methods'
+ },)
+ super(Command, self).__init__(*args, **kwargs)
diff --git a/askbot/management/commands/send_unanswered_question_reminders.py b/askbot/management/commands/send_unanswered_question_reminders.py
index 50ae6451..41fa8569 100644
--- a/askbot/management/commands/send_unanswered_question_reminders.py
+++ b/askbot/management/commands/send_unanswered_question_reminders.py
@@ -20,14 +20,22 @@ class Command(NoArgsCommand):
wait_period = datetime.timedelta(
askbot_settings.DAYS_BEFORE_SENDING_UNANSWERED_REMINDER
)
- cutoff_date = datetime.datetime.now() + wait_period
+ start_cutoff_date = datetime.datetime.now() - wait_period
+
+ recurrence_delay = datetime.timedelta(
+ askbot_settings.UNANSWERED_REMINDER_FREQUENCY
+ )
+ max_emails = askbot_settings.MAX_UNANSWERED_REMINDERS
+ end_cutoff_date = start_cutoff_date - (max_emails - 1)*recurrence_delay
questions = models.Question.objects.exclude(
closed = True
).exclude(
deleted = True
).filter(
- added_at__lt = cutoff_date
+ added_at__lt = start_cutoff_date
+ ).exclude(
+ added_at__lt = end_cutoff_date
).filter(
answer_count = 0
).order_by('-added_at')
@@ -50,9 +58,6 @@ class Command(NoArgsCommand):
activity_type = activity_type
)
now = datetime.datetime.now()
- recurrence_delay = datetime.timedelta(
- askbot_settings.UNANSWERED_REMINDER_FREQUENCY
- )
if now < activity.active_at + recurrence_delay:
continue
except models.Activity.DoesNotExist:
@@ -70,7 +75,7 @@ class Command(NoArgsCommand):
if question_count == 0:
continue
- tag_summary = get_tag_summary_from_questions(user_questions)
+ tag_summary = get_tag_summary_from_questions(final_question_list)
subject_line = ungettext(
'%(question_count)d unanswered question about %(topics)s',
'%(question_count)d unanswered questions about %(topics)s',
@@ -90,8 +95,12 @@ class Command(NoArgsCommand):
)
body_text += '</ul>'
- mail.send_mail(
- subject_line = subject_line,
- body_text = body_text,
- recipient_list = (user.email,)
- )
+ if DEBUG_THIS_COMMAND:
+ print "User: %s<br>\nSubject:%s<br>\nText: %s<br>\n" % \
+ (user.email, subject_line, body_text)
+ else:
+ mail.send_mail(
+ subject_line = subject_line,
+ body_text = body_text,
+ recipient_list = (user.email,)
+ )
diff --git a/askbot/middleware/view_log.py b/askbot/middleware/view_log.py
index 8f036077..a1a32010 100644
--- a/askbot/middleware/view_log.py
+++ b/askbot/middleware/view_log.py
@@ -10,7 +10,7 @@ from django.views.static import serve
from django.views.i18n import javascript_catalog
from askbot.models import signals
from askbot.views.readers import questions as questions_view
-from askbot.views.commands import vote
+from askbot.views.commands import vote, get_tag_list
from askbot.views.writers import delete_comment, post_comments, retag_question
from askbot.views.readers import revisions
from askbot.views.meta import media
@@ -18,8 +18,11 @@ from askbot.search.state_manager import ViewLog
#todo: the list is getting bigger and bigger - maybe there is a better way to
#trigger reset of sarch state?
-IGNORED_VIEWS = (serve, vote, media, delete_comment, post_comments,
- retag_question, revisions, javascript_catalog)
+IGNORED_VIEWS = (
+ serve, vote, media, delete_comment, post_comments,
+ retag_question, revisions, javascript_catalog,
+ get_tag_list
+)
class ViewLogMiddleware(object):
diff --git a/askbot/migrations/0004_install_full_text_indexes_for_mysql.py b/askbot/migrations/0004_install_full_text_indexes_for_mysql.py
index 72b7e8f5..ac8448e5 100644
--- a/askbot/migrations/0004_install_full_text_indexes_for_mysql.py
+++ b/askbot/migrations/0004_install_full_text_indexes_for_mysql.py
@@ -4,10 +4,21 @@ import datetime
from south.db import db
from south.v2 import DataMigration
from django.db import models
+from askbot.utils import mysql
Q_INDEX_NAME = 'askbot_question_full_text_index'
A_INDEX_NAME = 'askbot_answer_full_text_index'
+NO_FTS_WARNING = """
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!! !!
+!! WARNING: Your database engine does not support !!
+!! full text search. Please switch to PostgresQL !!
+!! or select MyISAM engine for MySQL !!
+!! !!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+"""
+
def get_create_full_text_index_sql(index_name, table_name, column_list):
column_sql = '(%s)' % ','.join(column_list)
sql = 'CREATE FULLTEXT INDEX %s on %s %s' % (index_name, table_name, column_sql)
@@ -24,24 +35,27 @@ class Migration(DataMigration):
and will probably fail otherwise
"""
if db.backend_name == 'mysql':
- #todo: extract column names by introspection
- question_index_sql = get_create_full_text_index_sql(
- Q_INDEX_NAME,
- orm.Question._meta.db_table,
- ('title','text','tagnames',)
- )
- db.execute(question_index_sql)
+ if mysql.supports_full_text_search():
+ #todo: extract column names by introspection
+ question_index_sql = get_create_full_text_index_sql(
+ Q_INDEX_NAME,
+ orm.Question._meta.db_table,
+ ('title','text','tagnames',)
+ )
+ db.execute(question_index_sql)
- answer_index_sql = get_create_full_text_index_sql(
- A_INDEX_NAME,
- orm.Answer._meta.db_table,
- ('text',)
- )
- db.execute(answer_index_sql)
+ answer_index_sql = get_create_full_text_index_sql(
+ A_INDEX_NAME,
+ orm.Answer._meta.db_table,
+ ('text',)
+ )
+ db.execute(answer_index_sql)
+ else:
+ print NO_FTS_WARNING
def backwards(self, orm):
"code for removal of full text indices in mysql"
- if db.backend_name == 'mysql':
+ if db.backend_name == 'mysql' and mysql.supports_full_text_search():
db.execute(
get_drop_index_sql(
Q_INDEX_NAME,
diff --git a/askbot/migrations/0022_init_postgresql_full_text_search.py b/askbot/migrations/0022_init_postgresql_full_text_search.py
index 173c1f21..b01c1285 100644
--- a/askbot/migrations/0022_init_postgresql_full_text_search.py
+++ b/askbot/migrations/0022_init_postgresql_full_text_search.py
@@ -1,5 +1,6 @@
# encoding: utf-8
import datetime
+import askbot
from south.db import db
from south.v2 import DataMigration
from django.db import models
@@ -10,7 +11,7 @@ class Migration(DataMigration):
def forwards(self, orm):
"Write your forwards methods here."
- if settings.DATABASE_ENGINE == 'postgresql_psycopg2':
+ if 'postgresql_psycopg2' in askbot.get_database_engine_name():
management.call_command('init_postgresql_full_text_search')
def backwards(self, orm):
diff --git a/askbot/models/__init__.py b/askbot/models/__init__.py
index 7c5f4ea7..42690512 100644
--- a/askbot/models/__init__.py
+++ b/askbot/models/__init__.py
@@ -876,8 +876,9 @@ def user_mark_tags(
* ``action`` - eitrer "add" or "remove"
"""
cleaned_wildcards = list()
- assert(reason in ('good', 'bad'))
assert(action in ('add', 'remove'))
+ if action == 'add':
+ assert(reason in ('good', 'bad'))
if wildcards:
cleaned_wildcards = self.update_wildcard_tag_selections(
action = action,
@@ -1283,8 +1284,7 @@ def user_visit_question(self, question = None, timestamp = None):
status=ActivityAuditStatus.STATUS_SEEN
)
if cleared_record_count > 0:
- self.decrement_response_count(cleared_record_count)
- self.save()
+ self.update_response_counts()
#finally, mark admin memo objects if applicable
#the admin response counts are not denormalized b/c they are easy to obtain
@@ -1770,35 +1770,24 @@ def user_get_flags_for_post(self, post):
flags = self.get_flags()
return flags.filter(content_type = post_content_type, object_id=post.id)
-def user_increment_response_count(user):
- """increment response counter for user
- by one
+def user_update_response_counts(user):
+ """Recount number of responses to the user.
"""
- user.new_response_count += 1
+ ACTIVITY_TYPES = const.RESPONSE_ACTIVITY_TYPES_FOR_DISPLAY
+ ACTIVITY_TYPES += (const.TYPE_ACTIVITY_MENTION,)
+
+ user.new_response_count = ActivityAuditStatus.objects.filter(
+ user = user,
+ status = ActivityAuditStatus.STATUS_NEW,
+ activity__activity_type__in = ACTIVITY_TYPES
+ ).count()
+ user.seen_response_count = ActivityAuditStatus.objects.filter(
+ user = user,
+ status = ActivityAuditStatus.STATUS_SEEN,
+ activity__activity_type__in = ACTIVITY_TYPES
+ ).count()
+ user.save()
-def user_decrement_response_count(user, amount=1):
- """decrement response count for the user
- by one, log critical error if count would go below zero
- but limit decrementation at zero exactly
- """
- assert(amount > 0)
- user.seen_response_count += amount
- if user.new_response_count >= amount:
- user.new_response_count -= amount
- user.clean_response_counts()
-
-def user_clean_response_counts(user):
- ""
- if user.new_response_count < 0:
- user.new_response_count = 0
- logging.critical(
- 'new response count wanted to go below zero for %s' % user.username
- )
- if user.seen_response_count < 0:
- user.seen_response_count = 0
- logging.critical(
- 'seen response count wanted to go below zero form %s' % user.username
- )
def user_receive_reputation(self, num_points):
new_points = self.reputation + num_points
@@ -1882,9 +1871,7 @@ User.add_to_class('follow_question', user_follow_question)
User.add_to_class('unfollow_question', user_unfollow_question)
User.add_to_class('is_following_question', user_is_following_question)
User.add_to_class('mark_tags', user_mark_tags)
-User.add_to_class('decrement_response_count', user_decrement_response_count)
-User.add_to_class('increment_response_count', user_increment_response_count)
-User.add_to_class('clean_response_counts', user_clean_response_counts)
+User.add_to_class('update_response_counts', user_update_response_counts)
User.add_to_class('can_have_strong_url', user_can_have_strong_url)
User.add_to_class('is_administrator', user_is_administrator)
User.add_to_class('set_admin_status', user_set_admin_status)
diff --git a/askbot/models/meta.py b/askbot/models/meta.py
index 290f5ef0..db92b4cd 100644
--- a/askbot/models/meta.py
+++ b/askbot/models/meta.py
@@ -260,7 +260,6 @@ class Comment(base.MetaContent, base.UserContent):
comment_content_type = ContentType.objects.get_for_model(self)
comment_id = self.id
- #on these activities decrement response counter
#todo: implement a custom delete method on these
#all this should pack into Activity.responses.filter( somehow ).delete()
activity_types = const.RESPONSE_ACTIVITY_TYPES_FOR_DISPLAY
@@ -273,16 +272,19 @@ class Comment(base.MetaContent, base.UserContent):
object_id = comment_id,
activity_type__in = activity_types
)
+
+ recipients = set()
for activity in activities:
for user in activity.recipients.all():
- user.decrement_response_count()
- user.save()
+ recipients.add(user)
+
+ #activities need to be deleted before the response
+ #counts are updated
activities.delete()
- #mentions - simply delete
- mentions = Activity.objects.get_mentions(mentioned_in = self)
- mentions.delete()
-
+ for user in recipients:
+ user.update_response_counts()
+
super(Comment,self).delete(**kwargs)
def get_absolute_url(self):
diff --git a/askbot/models/question.py b/askbot/models/question.py
index 5ad64a32..41579c11 100644
--- a/askbot/models/question.py
+++ b/askbot/models/question.py
@@ -26,6 +26,7 @@ from askbot.utils.lists import LazyList
from askbot.utils.slug import slugify
from askbot.utils import markup
from askbot.utils.html import sanitize_html
+from askbot.utils import mysql
#todo: too bad keys are duplicated see const sort methods
QUESTION_ORDER_BY_MAP = {
@@ -128,17 +129,17 @@ class QuestionQuerySet(models.query.QuerySet):
"""returns a query set of questions,
matching the full text query
"""
- if settings.DATABASE_ENGINE == 'mysql':
+ if settings.DATABASE_ENGINE == 'mysql' and mysql.supports_full_text_search():
return self.filter(
models.Q(title__search = search_query) \
| models.Q(text__search = search_query) \
| models.Q(tagnames__search = search_query) \
| models.Q(answers__text__search = search_query)
)
- elif settings.DATABASE_ENGINE == 'postgresql_psycopg2':
+ elif 'postgresql_psycopg2' in askbot.get_database_engine_name():
rank_clause = "ts_rank(question.text_search_vector, to_tsquery(%s))";
search_query = '&'.join(search_query.split())
- extra_params = ("'" + search_query + "'",)
+ extra_params = (search_query,)
extra_kwargs = {
'select': {'relevance': rank_clause},
'where': ['text_search_vector @@ to_tsquery(%s)'],
@@ -200,6 +201,7 @@ class QuestionQuerySet(models.query.QuerySet):
from askbot.conf import settings as askbot_settings
if scope_selector:
if scope_selector == 'unanswered':
+ qs = qs.filter(closed = False)#do not show closed questions in unanswered section
if askbot_settings.UNANSWERED_QUESTION_MEANING == 'NO_ANSWERS':
qs = qs.filter(answer_count=0)#todo: expand for different meanings of this
elif askbot_settings.UNANSWERED_QUESTION_MEANING == 'NO_ACCEPTED_ANSWERS':
diff --git a/askbot/models/signals.py b/askbot/models/signals.py
index d28cd4a5..8802fcf7 100644
--- a/askbot/models/signals.py
+++ b/askbot/models/signals.py
@@ -73,7 +73,7 @@ def pop_all_db_signal_receivers():
post_syncdb,
)
if 'm2m_changed' in globals():
- signals += m2m_changed
+ signals += (m2m_changed, )
receiver_data = dict()
for signal in signals:
diff --git a/askbot/models/user.py b/askbot/models/user.py
index 09e7ebee..621a2bb8 100644
--- a/askbot/models/user.py
+++ b/askbot/models/user.py
@@ -77,8 +77,7 @@ class ActivityManager(models.Manager):
if mentioned_whom:
assert(isinstance(mentioned_whom, User))
mention_activity.add_recipients([mentioned_whom])
- mentioned_whom.increment_response_count()
- mentioned_whom.save()
+ mentioned_whom.update_response_counts()
return mention_activity
diff --git a/askbot/search/state_manager.py b/askbot/search/state_manager.py
index f45f4bcc..9392190a 100644
--- a/askbot/search/state_manager.py
+++ b/askbot/search/state_manager.py
@@ -237,7 +237,6 @@ class ViewLog(object):
def should_reset_search_state(self):
"""return True if user stepped too far from the home page
and False otherwise"""
- return False
if self.get_previous(1) != 'questions':
if self.get_previous(2) != 'questions':
return True
diff --git a/askbot/setup_templates/settings.py b/askbot/setup_templates/settings.py
index 4a556bc2..65007676 100644
--- a/askbot/setup_templates/settings.py
+++ b/askbot/setup_templates/settings.py
@@ -139,6 +139,7 @@ TEMPLATE_CONTEXT_PROCESSORS = (
#'django.core.context_processors.i18n',
'askbot.user_messages.context_processors.user_messages',#must be before auth
'django.core.context_processors.auth', #this is required for admin
+ 'django.core.context_processors.csrf', #necessary for csrf protection
)
diff --git a/askbot/skins/default/media/js/live_search.js b/askbot/skins/default/media/js/live_search.js
index 0f6b79c3..39ed2d14 100644
--- a/askbot/skins/default/media/js/live_search.js
+++ b/askbot/skins/default/media/js/live_search.js
@@ -493,6 +493,7 @@ var liveSearch = function(){
return {
refresh: function(){
+ query = $('input#keywords');
refresh_main_page();
},
init: function(mode){
diff --git a/askbot/skins/default/media/style/style.css b/askbot/skins/default/media/style/style.css
index a4e7d581..24b01672 100755
--- a/askbot/skins/default/media/style/style.css
+++ b/askbot/skins/default/media/style/style.css
@@ -106,11 +106,11 @@ pre {
font-family: Consolas, Monaco, Liberation Mono, Lucida Console, Monospace;
font-size: 100%;
margin-bottom: 10px;
- overflow: auto;
+ /*overflow: auto;*/
background-color: #F5F5F5;
padding-left: 5px;
padding-top: 5px;
- width: 671px;
+ /*width: 671px;*/
padding-bottom: 20px ! ie7;
}
@@ -469,6 +469,12 @@ span.delete-icon:hover {
font-family: sans-serif;
}
+.badges .tag-number {
+ float: none;
+ display: inline;
+ padding-right: 15px;
+}
+
ul#search-tags {
padding-top: 3px;
}
@@ -589,6 +595,7 @@ ul#search-tags {
.answer-table {
border-bottom: 1px solid #bbb;
+ clear: both;
}
.evenMore {
@@ -838,6 +845,8 @@ a:hover.medal {
.question-body, .answer-body {
min-height: 39px;
line-height: 20px;
+ overflow: auto;
+ width: 660px;
}
.question-body IMG, .answer-body IMG {
@@ -1197,6 +1206,7 @@ span.form-error {
width: 691px;
background-color: #F5F5F5;
min-height: 20px;
+ overflow: auto;
}
.wmd-preview pre {
@@ -1747,6 +1757,8 @@ button::-moz-focus-inner {
margin: 0;
color: #444;
padding: 2px 3px 5px 3px;
+ width: 670px;
+ overflow: auto;
}
/* these need to go */
diff --git a/askbot/skins/default/templates/answer_edit.html b/askbot/skins/default/templates/answer_edit.html
index 0d8b40da..e8cbc7ae 100644
--- a/askbot/skins/default/templates/answer_edit.html
+++ b/askbot/skins/default/templates/answer_edit.html
@@ -10,23 +10,21 @@
{% trans %}Edit answer{% endtrans %} [<a href="{{ answer.question.get_absolute_url() }}#{{ answer.id }}">{% trans %}back{% endtrans %}</a>]
</h1>
<div id="main-body" class="ask-body">
- <div id="askform">
- <form id="fmedit" action="{% url edit_answer answer.id %}" method="post" >{% csrf_token %}
- <label for="id_revision" ><strong>{% trans %}revision{% endtrans %}:</strong></label> <br/>
- {% if revision_form.revision.errors %}{{ revision_form.revision.errors.as_ul() }}{% endif %}
- <div style="vertical-align:middle">
- {{ revision_form.revision }} <input type="submit" style="display:none" id="select_revision" name="select_revision" value="{% trans %}select revision{% endtrans %}">
- </div>
- {{ macros.edit_post(form) }}
- <div class="after-editor">
- <input type="submit" value="{% trans %}Save edit{% endtrans %}" class="submit" />&nbsp;
- <input type="button" value="{% trans %}Cancel{% endtrans %}" class="submit" onclick="history.back(-1);" />
- </div>
- {% if settings.WIKI_ON and answer.wiki == False %}
- {{ macros.checkbox_in_div(form.wiki) }}
- {% endif %}
- </form>
- </div>
+ <form id="fmedit" action="{% url edit_answer answer.id %}" method="post" >{% csrf_token %}
+ <label for="id_revision" ><strong>{% trans %}revision{% endtrans %}:</strong></label> <br/>
+ {% if revision_form.revision.errors %}{{ revision_form.revision.errors.as_ul() }}{% endif %}
+ <div style="vertical-align:middle">
+ {{ revision_form.revision }} <input type="submit" style="display:none" id="select_revision" name="select_revision" value="{% trans %}select revision{% endtrans %}">
+ </div>
+ {{ macros.edit_post(form) }}
+ <div class="after-editor">
+ <input type="submit" value="{% trans %}Save edit{% endtrans %}" class="submit" />&nbsp;
+ <input type="button" value="{% trans %}Cancel{% endtrans %}" class="submit" onclick="history.back(-1);" />
+ </div>
+ {% if settings.WIKI_ON and answer.wiki == False %}
+ {{ macros.checkbox_in_div(form.wiki) }}
+ {% endif %}
+ </form>
</div>
{% endblock %}
diff --git a/askbot/skins/default/templates/authopenid/macros.html b/askbot/skins/default/templates/authopenid/macros.html
index 534fb42f..33ef793b 100644
--- a/askbot/skins/default/templates/authopenid/macros.html
+++ b/askbot/skins/default/templates/authopenid/macros.html
@@ -17,14 +17,12 @@
settings = None
)
%}
- {{login_form.login_provider_name}}
- {{ login_form.next }}
<div id="login-icons">
<ul class="login-icons large">
{% for login_provider in major_login_providers %}
{% if login_provider.name == 'local' and hide_local_login == True %}
{# do nothing here, left if statement this way for simplicity #}
- {% elif settings['SIGNIN_' + login_provider.name.upper() + '_ENABLED'] == True %}
+ {% else %}
<li>
{{ login_provider_input(login_provider) }}
</li>
@@ -33,11 +31,9 @@
</ul>
<ul class="login-icons small">
{% for login_provider in minor_login_providers %}
- {% if settings['SIGNIN_' + login_provider.name.upper() + '_ENABLED'] == True %}
<li>
{{ login_provider_input(login_provider) }}
</li>
- {% endif %}
{% endfor %}
</ul>
</div>
diff --git a/askbot/skins/default/templates/authopenid/signin.html b/askbot/skins/default/templates/authopenid/signin.html
index 9316255a..9133fa9c 100644
--- a/askbot/skins/default/templates/authopenid/signin.html
+++ b/askbot/skins/default/templates/authopenid/signin.html
@@ -6,7 +6,9 @@
<link rel="stylesheet" type="text/css" media="screen" href="{{"/jquery-openid/openid.css"|media}}"/>
{% endblock %}
{% block content %}
-<h1>{{page_title}}</h1>
+{% if have_buttons or view_subtype == 'email_sent' %}
+ <h1>{{page_title}}</h1>
+{% endif %}
{% if answer %}
<div class="message">
{% trans title=answer.question.title, summary=answer.summary %}
@@ -22,15 +24,15 @@
</div>
{% endif %}
<p id='login-intro'>
- {% if view_subtype == 'default' %}
+ {% if view_subtype == 'default' and have_buttons %}
{% trans %}Take a pick of your favorite service below to sign in using secure OpenID or similar technology. Your external service password always stays confidential and you don't have to rememeber or create another one.{% endtrans %}
- {% elif view_subtype == 'add_openid' %}
+ {% elif view_subtype == 'add_openid' and have_buttons %}
{% if existing_login_methods %}
{% trans %}It's a good idea to make sure that your existing login methods still work, or add a new one. Please click any of the icons below to check/change or add new login methods.{% endtrans %}
{% else %}
{% trans %}Please add a more permanent login method by clicking one of the icons below, to avoid logging in via email each time.{% endtrans %}
{% endif %}
- {% elif view_subtype == 'change_openid' %}
+ {% elif view_subtype == 'change_openid' and have_buttons %}
{% if existing_login_methods %}
{% trans %}Click on one of the icons below to add a new login method or re-validate an existing one.{% endtrans %}
{% else %}
@@ -50,6 +52,8 @@
wants to always show the password login form - then
the button is useless.
#}
+ {{ login_form.login_provider_name }}
+ {{ login_form.next }}
{{
login_macros.provider_buttons(
login_form = login_form,
@@ -81,7 +85,9 @@
<h2 id="password-heading">
{% trans %}Please enter your <span>user name and password</span>, then sign in{% endtrans %}
</h2>
- <p class="hint">{% trans %}(or select another login method above){% endtrans %}</p>
+ {% if have_buttons %}
+ <p class="hint">{% trans %}(or select another login method above){% endtrans %}</p>
+ {% endif %}
{% if login_form.password_login_failed %}
<p class="error">{% trans %}Login failed, please try again{% endtrans %}</p>
{% endif %}
@@ -156,7 +162,7 @@
</form>
{% endif %}
{% if view_subtype != 'email_sent' or view_subtype == 'bad_key' %}
- {% if user.is_anonymous() %}
+ {% if user.is_anonymous() and settings.ALLOW_ACCOUNT_RECOVERY_BY_EMAIL %}
<form id="account-recovery-form" action="{% url user_account_recover %}" method="post">{% csrf_token %}
{% if view_subtype != 'bad_key' %}
<h2 id='account-recovery-heading'>{% trans %}Still have trouble signing in?{% endtrans %}</h2>
@@ -192,27 +198,29 @@
{% endblock %}
{% block sidebar %}
-<div class="boxC">
- <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>
+ {% if have_buttons %}
+ <div class="boxC">
+ <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" %}
diff --git a/askbot/skins/default/templates/blocks/ask_form.html b/askbot/skins/default/templates/blocks/ask_form.html
index 9b61c7ce..24196bb6 100644
--- a/askbot/skins/default/templates/blocks/ask_form.html
+++ b/askbot/skins/default/templates/blocks/ask_form.html
@@ -1,41 +1,39 @@
{% import "macros.html" as macros %}
-<div id="askform">
- <form id="fmask" action="" method="post" >{% csrf_token %}
- <div class="form-item">
- <div id="askFormBar">
- {% if not request.user.is_authenticated() %}
- <p>{% trans %}login to post question info{% 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 %}
- {% endif %}
+<form id="fmask" action="" method="post" >{% csrf_token %}
+ <div class="form-item">
+ <div id="askFormBar">
+ {% if not request.user.is_authenticated() %}
+ <p>{% trans %}login to post question info{% 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 %}
{% endif %}
{% endif %}
- <input id="id_title" class="questionTitleInput" name="title" autocomplete="off"
- value="{% if form.initial.title %}{{form.initial.title}}{% endif %}"/>
- <span class="form-error">{{ form.title.errors }}</span>
- </div>
- <div class="title-desc">
- {{ form.title.help_text }}
- </div>
- </div>
- <div id='question-list'></div>
- {{macros.edit_post(form, post_type='question', edit_title=False)}}
- {% if not request.user.is_authenticated() %}
- <input type="submit" name="post_anon" value="{% trans %}Login/signup to post your question{% endtrans %}" class="submit" />
- {% else %}
- <input type="submit" name="post" value="{% trans %}Ask your question{% endtrans %}" class="submit" />
- {% endif %}
- <div class="question-options">
- {% if settings.WIKI_ON %}
- {{ macros.checkbox_in_div(form.wiki) }}
- {% endif %}
- {% if settings.ALLOW_ASK_ANONYMOUSLY %}
- {{ macros.checkbox_in_div(form.ask_anonymously) }}
{% endif %}
+ <input id="id_title" class="questionTitleInput" name="title" autocomplete="off"
+ value="{% if form.initial.title %}{{form.initial.title}}{% endif %}"/>
+ <span class="form-error">{{ form.title.errors }}</span>
</div>
- </form>
-</div>
+ <div class="title-desc">
+ {{ form.title.help_text }}
+ </div>
+ </div>
+ <div id='question-list'></div>
+ {{macros.edit_post(form, post_type='question', edit_title=False)}}
+ {% if not request.user.is_authenticated() %}
+ <input type="submit" name="post_anon" value="{% trans %}Login/signup to post your question{% endtrans %}" class="submit" />
+ {% else %}
+ <input type="submit" name="post" value="{% trans %}Ask your question{% endtrans %}" class="submit" />
+ {% endif %}
+ <div class="question-options">
+ {% if settings.WIKI_ON %}
+ {{ macros.checkbox_in_div(form.wiki) }}
+ {% endif %}
+ {% if settings.ALLOW_ASK_ANONYMOUSLY %}
+ {{ macros.checkbox_in_div(form.ask_anonymously) }}
+ {% endif %}
+ </div>
+</form>
diff --git a/askbot/skins/default/templates/question.html b/askbot/skins/default/templates/question.html
index ffab9bd1..250a6962 100644
--- a/askbot/skins/default/templates/question.html
+++ b/askbot/skins/default/templates/question.html
@@ -12,298 +12,297 @@
{% endblock %}
{% block content %}
<h1><a href="{{ question.get_absolute_url() }}">{{ question.get_question_title() }}</a></h1>
-<div id="askform">
- <table style="width:100%;" id="question-table" {% if question.deleted %}class="deleted"{%endif%}>
- <tr>
- <td style="width:30px;vertical-align:top">
- <div class="vote-buttons">
- {% if question_vote %}
- <img id="question-img-upvote-{{ question.id }}" class="question-img-upvote"
- {% if question_vote.is_upvote() %}
- src="{{"/images/vote-arrow-up-on.png"|media}}"
- {% else %}
- src="{{"/images/vote-arrow-up.png"|media}}"
- {% endif %}
- alt="{% trans %}i like this post (click again to cancel){% endtrans %}"
- title="{% trans %}i like this post (click again to cancel){% endtrans %}" />
- <div id="question-vote-number-{{ question.id }}" class="vote-number"
- title="{% trans %}current number of votes{% endtrans %}">
- {{ question.score }}
- </div>
- <img id="question-img-downvote-{{ question.id }}" class="question-img-downvote"
- {% if question_vote.is_downvote() %}
- src="{{"/images/vote-arrow-down-on.png"|media}}"
- {% else %}
- src="{{"/images/vote-arrow-down.png"|media}}"
- {% endif %}
- alt="{% trans %}i dont like this post (click again to cancel){% endtrans %}"
- title="{% trans %}i dont like this post (click again to cancel){% endtrans %}" />
+<table style="width:100%;" id="question-table" {% if question.deleted %}class="deleted"{%endif%}>
+ <tr>
+ <td style="width:30px;vertical-align:top">
+ <div class="vote-buttons">
+ {% if question_vote %}
+ <img id="question-img-upvote-{{ question.id }}" class="question-img-upvote"
+ {% if question_vote.is_upvote() %}
+ src="{{"/images/vote-arrow-up-on.png"|media}}"
{% else %}
- <img id="question-img-upvote-{{ question.id }}" class="question-img-upvote"
- alt="{% trans %}i like this post (click again to cancel){% endtrans %}"
src="{{"/images/vote-arrow-up.png"|media}}"
- title="{% trans %}i like this post (click again to cancel){% endtrans %}" />
- <div id="question-vote-number-{{ question.id }}" class="vote-number"
- title="{% trans %}current number of votes{% endtrans %}">
- {{ question.score }}
- </div>
- <img id="question-img-downvote-{{ question.id }}" class="question-img-downvote"
- src="{{"/images/vote-arrow-down.png"|media}}"
- alt="{% trans %}i dont like this post (click again to cancel){% endtrans %}"
- title="{% trans %}i dont like this post (click again to cancel){% endtrans %}" />
{% endif %}
- {% if favorited %}
- <img class="question-img-favorite" src="{{"/images/vote-favorite-on.png"|media}}"
- alt="{% trans %}mark this question as favorite (click again to cancel){% endtrans %}"
- title="{% trans %}mark this question as favorite (click again to cancel){% endtrans %}" />
- <div id="favorite-number" class="favorite-number my-favorite-number">
- {{ question.favourite_count }}
- </div>
+ alt="{% trans %}i like this post (click again to cancel){% endtrans %}"
+ title="{% trans %}i like this post (click again to cancel){% endtrans %}" />
+ <div id="question-vote-number-{{ question.id }}" class="vote-number"
+ title="{% trans %}current number of votes{% endtrans %}">
+ {{ question.score }}
+ </div>
+ <img id="question-img-downvote-{{ question.id }}" class="question-img-downvote"
+ {% if question_vote.is_downvote() %}
+ src="{{"/images/vote-arrow-down-on.png"|media}}"
{% else %}
- <img class="question-img-favorite" src="{{"/images/vote-favorite-off.png"|media}}"
- alt="{% trans %}remove favorite mark from this question (click again to restore mark){% endtrans %}"
- title="{% trans %}remove favorite mark from this question (click again to restore mark){% endtrans %}" />
- <div id="favorite-number" class="favorite-number">
- {% if question.favourite_count != 0 %}{{ question.favourite_count }}{% endif %}
- </div>
- {% endif %}
- {% if settings.ENABLE_SOCIAL_SHARING %}
- <a class="twitter-share" alt="{% trans %}Share this question on twitter{% endtrans %}"></a>
- <a class="fb-share" alt="{% trans %}Share this question on facebook{% endtrans %}"></a>
+ src="{{"/images/vote-arrow-down.png"|media}}"
{% endif %}
+ alt="{% trans %}i dont like this post (click again to cancel){% endtrans %}"
+ title="{% trans %}i dont like this post (click again to cancel){% endtrans %}" />
+ {% else %}
+ <img id="question-img-upvote-{{ question.id }}" class="question-img-upvote"
+ alt="{% trans %}i like this post (click again to cancel){% endtrans %}"
+ src="{{"/images/vote-arrow-up.png"|media}}"
+ title="{% trans %}i like this post (click again to cancel){% endtrans %}" />
+ <div id="question-vote-number-{{ question.id }}" class="vote-number"
+ title="{% trans %}current number of votes{% endtrans %}">
+ {{ question.score }}
</div>
- </td>
- <td>
- <div class="question-body">
- {{question.html}}
+ <img id="question-img-downvote-{{ question.id }}" class="question-img-downvote"
+ src="{{"/images/vote-arrow-down.png"|media}}"
+ alt="{% trans %}i dont like this post (click again to cancel){% endtrans %}"
+ title="{% trans %}i dont like this post (click again to cancel){% endtrans %}" />
+ {% endif %}
+ {% if favorited %}
+ <img class="question-img-favorite" src="{{"/images/vote-favorite-on.png"|media}}"
+ alt="{% trans %}mark this question as favorite (click again to cancel){% endtrans %}"
+ title="{% trans %}mark this question as favorite (click again to cancel){% endtrans %}" />
+ <div id="favorite-number" class="favorite-number my-favorite-number">
+ {{ question.favourite_count }}
</div>
- <ul id="question-tags" class="post-tags tags">
- {% for tag in question.get_tag_names() %}
- {{ macros.tag_widget(
- tag,
- css_class = 'post-tag',
- html_tag = 'li'
- )
- }}
- {% endfor %}
- </ul>
- <div id="question-controls" class="post-controls">
- {% set pipe=joiner('<span class="sep">|</span>') %}
- {% if request.user|can_edit_post(question) %}{{ pipe() }}
- <a href="{% url edit_question question.id %}">{% trans %}edit{% endtrans %}</a>
- {% endif %}
- {% if request.user|can_retag_question(question) %}{{ pipe() }}
- <a id="retag" href="{% url retag_question question.id %}">{% trans %}retag{% endtrans %}</a>
- <script type="text/javascript">
- var retagUrl = "{% url retag_question question.id %}";
- </script>
- {% endif %}
- {% if question.closed %}
- {% if request.user|can_reopen_question(question) %}{{ pipe() }}
- <a href="{% url reopen question.id %}">{% trans %}reopen{% endtrans %}</a>
- {% endif %}
- {% else %}
- {% if request.user|can_close_question(question) %}{{ pipe() }}
- <a href="{% url close question.id %}">{% trans %}close{% endtrans %}</a>
- {% endif %}
+ {% else %}
+ <img class="question-img-favorite" src="{{"/images/vote-favorite-off.png"|media}}"
+ alt="{% trans %}remove favorite mark from this question (click again to restore mark){% endtrans %}"
+ title="{% trans %}remove favorite mark from this question (click again to restore mark){% endtrans %}" />
+ <div id="favorite-number" class="favorite-number">
+ {% if question.favourite_count != 0 %}{{ question.favourite_count }}{% endif %}
+ </div>
+ {% endif %}
+ {% if settings.ENABLE_SOCIAL_SHARING %}
+ <a class="twitter-share" alt="{% trans %}Share this question on twitter{% endtrans %}"></a>
+ <a class="fb-share" alt="{% trans %}Share this question on facebook{% endtrans %}"></a>
+ {% endif %}
+ </div>
+ </td>
+ <td>
+ <div class="question-body">
+ {{question.html}}
+ </div>
+ <ul id="question-tags" class="post-tags tags">
+ {% for tag in question.get_tag_names() %}
+ {{ macros.tag_widget(
+ tag,
+ css_class = 'post-tag',
+ html_tag = 'li'
+ )
+ }}
+ {% endfor %}
+ </ul>
+ <div id="question-controls" class="post-controls">
+ {% set pipe=joiner('<span class="sep">|</span>') %}
+ {% if request.user|can_edit_post(question) %}{{ pipe() }}
+ <a href="{% url edit_question question.id %}">{% trans %}edit{% endtrans %}</a>
+ {% endif %}
+ {% if request.user|can_retag_question(question) %}{{ pipe() }}
+ <a id="retag" href="{% url retag_question question.id %}">{% trans %}retag{% endtrans %}</a>
+ <script type="text/javascript">
+ var retagUrl = "{% url retag_question question.id %}";
+ </script>
+ {% endif %}
+ {% if question.closed %}
+ {% if request.user|can_reopen_question(question) %}{{ pipe() }}
+ <a href="{% url reopen question.id %}">{% trans %}reopen{% endtrans %}</a>
{% endif %}
- {% if request.user|can_flag_offensive(question) %}{{ pipe() }}
- <span id="question-offensive-flag-{{ question.id }}" class="offensive-flag"
- title="{% trans %}report as offensive (i.e containing spam, advertising, malicious text, etc.){% endtrans %}">
- <a>{% trans %}flag offensive{% endtrans %}</a>
- {% if request.user|can_see_offensive_flags(question) %}
- <span class="darkred">{% if question.offensive_flag_count > 0 %}({{ question.offensive_flag_count }}){% endif %}</span>
- {% endif %}
- </span>
+ {% else %}
+ {% if request.user|can_close_question(question) %}{{ pipe() }}
+ <a href="{% url close question.id %}">{% trans %}close{% endtrans %}</a>
{% endif %}
- {% if request.user|can_delete_post(question) %}{{ pipe() }}
- <a id="question-delete-link-{{question.id}}">{% if question.deleted %}{% trans %}undelete{% endtrans %}{% else %}{% trans %}delete{% endtrans %}{% endif %}</a>
+ {% endif %}
+ {% if request.user|can_flag_offensive(question) %}{{ pipe() }}
+ <span id="question-offensive-flag-{{ question.id }}" class="offensive-flag"
+ title="{% trans %}report as offensive (i.e containing spam, advertising, malicious text, etc.){% endtrans %}">
+ <a>{% trans %}flag offensive{% endtrans %}</a>
+ {% if request.user|can_see_offensive_flags(question) %}
+ <span class="darkred">{% if question.offensive_flag_count > 0 %}({{ question.offensive_flag_count }}){% endif %}</span>
{% endif %}
- </div>
- <div class="post-update-info-container">
- {{
- macros.post_contributor_info(
- question,
- "original_author",
- question.wiki,
- settings.MIN_REP_TO_EDIT_WIKI
- )
- }}
- {{
- macros.post_contributor_info(
- question,
- "last_updater",
- question.wiki,
- settings.MIN_REP_TO_EDIT_WIKI,
- )
- }}
- </div>
- {{
- macros.post_comments_widget(
- post = question,
- show_post = show_post,
- show_comment = show_comment,
- comment_order_number = comment_order_number,
- user = request.user,
- max_comments = settings.MAX_COMMENTS_TO_SHOW
- )
- }}
- <!--/div-->
- </td>
- </tr>
- </table>
- {% if question.closed %}
- <div class="question-status" style="margin-bottom:15px">
- <h3>{% trans close_reason=question.get_close_reason_display() %}The question has been closed for the following reason "{{ close_reason }}" by{% endtrans %}
- <a href="{{ question.closed_by.get_profile_url() }}">{{ question.closed_by.username }}</a>
- {% trans closed_at=question.closed_at %}close date {{closed_at}}{% endtrans %}</h3>
- </div>
- {% endif %}
- {% if answers %}
- <div class="tabBar">
- <h2 id="sort-top">
- {% trans counter=answers|length %}
- {{counter}} Answer:
- {% pluralize %}
- {{counter}} Answers:
- {% endtrans %}
- </h2>
- <div class="tabsA">
- <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>
- <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>
- <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>
+ {% endif %}
+ {% if request.user|can_delete_post(question) %}{{ pipe() }}
+ <a id="question-delete-link-{{question.id}}">{% if question.deleted %}{% trans %}undelete{% endtrans %}{% else %}{% trans %}delete{% endtrans %}{% endif %}</a>
+ {% endif %}
</div>
+ <div class="post-update-info-container">
+ {{
+ macros.post_contributor_info(
+ question,
+ "original_author",
+ question.wiki,
+ settings.MIN_REP_TO_EDIT_WIKI
+ )
+ }}
+ {{
+ macros.post_contributor_info(
+ question,
+ "last_updater",
+ question.wiki,
+ settings.MIN_REP_TO_EDIT_WIKI,
+ )
+ }}
+ </div>
+ {{
+ macros.post_comments_widget(
+ post = question,
+ show_post = show_post,
+ show_comment = show_comment,
+ comment_order_number = comment_order_number,
+ user = request.user,
+ max_comments = settings.MAX_COMMENTS_TO_SHOW
+ )
+ }}
+ <!--/div-->
+ </td>
+ </tr>
+</table>
+{% if question.closed %}
+<div class="question-status" style="margin-bottom:15px">
+<h3>{% trans close_reason=question.get_close_reason_display() %}The question has been closed for the following reason "{{ close_reason }}" by{% endtrans %}
+<a href="{{ question.closed_by.get_profile_url() }}">{{ question.closed_by.username }}</a>
+{% trans closed_at=question.closed_at %}close date {{closed_at}}{% endtrans %}</h3>
+</div>
+{% endif %}
+{% if answers %}
+ <div class="tabBar">
+ <h2 id="sort-top">
+ {% trans counter=answers|length %}
+ {{counter}} Answer:
+ {% pluralize %}
+ {{counter}} Answers:
+ {% endtrans %}
+ </h2>
+ <div class="tabsA">
+ <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>
+ <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>
+ <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>
</div>
- {{ macros.paginator(paginator_context) }}
+ </div>
+ {{ macros.paginator(paginator_context) }}
- {% for answer in answers %}
- <a name="{{ answer.id }}"></a>
- <div id="answer-container-{{ answer.id }}" class="answer {% if answer.accepted %}accepted-answer{% endif %} {% if answer.author_id==question.author_id %} answered-by-owner{% endif %} {% if answer.deleted %}deleted{% endif %}">
- <table style="width:100%;" class="answer-table">
- <tr>
- <td style="width:30px;vertical-align:top">
- <div class="vote-buttons">
- <img id="answer-img-upvote-{{ answer.id }}" class="answer-img-upvote"
- {% if user_answer_votes[answer.id] == 1 %}
- src="{{"/images/vote-arrow-up-on.png"|media}}"
- {% else %}
- src="{{"/images/vote-arrow-up.png"|media}}"
- {% endif %}
- alt="{% trans %}i like this answer (click again to cancel){% endtrans %}"
- title="{% trans %}i like this answer (click again to cancel){% endtrans %}"/>
- <div id="answer-vote-number-{{ answer.id }}" class="vote-number" title="{% trans %}current number of votes{% endtrans %}">
- {{ answer.score }}
- </div>
- <img id="answer-img-downvote-{{ answer.id }}" class="answer-img-downvote"
- {% if user_answer_votes[answer.id] == -1 %}
- src="{{"/images/vote-arrow-down-on.png"|media}}"
- {% else %}
- src="{{"/images/vote-arrow-down.png"|media}}"
- {% endif %}
- alt="{% trans %}i dont like this answer (click again to cancel){% endtrans %}"
- title="{% trans %}i dont like this answer (click again to cancel){% endtrans %}" />
- {% if request.user == question.author %}
+ {% for answer in answers %}
+ <a name="{{ answer.id }}"></a>
+ <div id="answer-container-{{ answer.id }}" class="answer {% if answer.accepted %}accepted-answer{% endif %} {% if answer.author_id==question.author_id %} answered-by-owner{% endif %} {% if answer.deleted %}deleted{% endif %}">
+ <table style="width:100%;" class="answer-table">
+ <tr>
+ <td style="width:30px;vertical-align:top">
+ <div class="vote-buttons">
+ <img id="answer-img-upvote-{{ answer.id }}" class="answer-img-upvote"
+ {% if user_answer_votes[answer.id] == 1 %}
+ src="{{"/images/vote-arrow-up-on.png"|media}}"
+ {% else %}
+ src="{{"/images/vote-arrow-up.png"|media}}"
+ {% endif %}
+ alt="{% trans %}i like this answer (click again to cancel){% endtrans %}"
+ title="{% trans %}i like this answer (click again to cancel){% endtrans %}"/>
+ <div id="answer-vote-number-{{ answer.id }}" class="vote-number" title="{% trans %}current number of votes{% endtrans %}">
+ {{ answer.score }}
+ </div>
+ <img id="answer-img-downvote-{{ answer.id }}" class="answer-img-downvote"
+ {% if user_answer_votes[answer.id] == -1 %}
+ src="{{"/images/vote-arrow-down-on.png"|media}}"
+ {% else %}
+ src="{{"/images/vote-arrow-down.png"|media}}"
+ {% endif %}
+ alt="{% trans %}i dont like this answer (click again to cancel){% endtrans %}"
+ title="{% trans %}i dont like this answer (click again to cancel){% endtrans %}" />
+ {% if request.user == question.author %}
+ <img id="answer-img-accept-{{ answer.id }}" class="answer-img-accept"
+ {% if answer.accepted %}
+ src="{{"/images/vote-accepted-on.png"|media}}"
+ {% else %}
+ src="{{"/images/vote-accepted.png"|media}}"
+ {% endif %}
+ alt="{% trans %}mark this answer as favorite (click again to undo){% endtrans %}"
+ title="{% trans %}mark this answer as favorite (click again to undo){% endtrans %}" />
+ {% else %}
+ {% if answer.accepted %}
<img id="answer-img-accept-{{ answer.id }}" class="answer-img-accept"
{% if answer.accepted %}
src="{{"/images/vote-accepted-on.png"|media}}"
{% else %}
- src="{{"/images/vote-accepted.png"|media}}"
- {% endif %}
- alt="{% trans %}mark this answer as favorite (click again to undo){% endtrans %}"
- title="{% trans %}mark this answer as favorite (click again to undo){% endtrans %}" />
- {% else %}
- {% if answer.accepted %}
- <img id="answer-img-accept-{{ answer.id }}" class="answer-img-accept"
- {% if answer.accepted %}
- src="{{"/images/vote-accepted-on.png"|media}}"
- {% else %}
- src="{{"/images/vote-accepted.png"|media}}"
- {% endif %}
- alt="{% trans question_author=question.author.username %}{{question_author}} has selected this answer as correct{% endtrans %}"
- title="{% trans questsion_author=question.author.username%}{{question_author}} has selected this answer as correct{% endtrans %}"
+ src="{{"/images/vote-accepted.png"|media}}"
{% endif %}
+ alt="{% trans question_author=question.author.username %}{{question_author}} has selected this answer as correct{% endtrans %}"
+ title="{% trans questsion_author=question.author.username%}{{question_author}} has selected this answer as correct{% endtrans %}"
{% endif %}
+ {% endif %}
+ </div>
+ </td>
+ <td>
+ <div class="item-right">
+ <div class="answer-body">
+ {{ answer.html }}
</div>
- </td>
- <td>
- <div class="item-right">
- <div class="answer-body">
- {{ answer.html }}
- </div>
- <div class="answer-controls post-controls">
- {% set pipe=joiner('<span class="sep">|</span>') %}
- <span class="linksopt">{{ pipe() }}
- <a
- href="{{ answer.get_absolute_url() }}"
- title="{% trans %}answer permanent link{% endtrans %}">
- {% trans %}permanent link{% endtrans %}
- </a>
- </span>
- {% if request.user|can_edit_post(answer) %}{{ pipe() }}
- <span class="action-link"><a href="{% url edit_answer answer.id %}">{% trans %}edit{% endtrans %}</a></span>
+ <div class="answer-controls post-controls">
+ {% set pipe=joiner('<span class="sep">|</span>') %}
+ <span class="linksopt">{{ pipe() }}
+ <a
+ href="{{ answer.get_absolute_url() }}"
+ title="{% trans %}answer permanent link{% endtrans %}">
+ {% trans %}permanent link{% endtrans %}
+ </a>
+ </span>
+ {% if request.user|can_edit_post(answer) %}{{ pipe() }}
+ <span class="action-link"><a href="{% url edit_answer answer.id %}">{% trans %}edit{% endtrans %}</a></span>
+ {% endif %}
+ {% if request.user|can_flag_offensive(answer) %}{{ pipe() }}
+ <span id="answer-offensive-flag-{{ answer.id }}" class="offensive-flag"
+ title="{% trans %}report as offensive (i.e containing spam, advertising, malicious text, etc.){% endtrans %}">
+ <a>{% trans %}flag offensive{% endtrans %}</a>
+ {% if request.user|can_see_offensive_flags(answer) %}
+ <span class="darkred">{% if answer.offensive_flag_count > 0 %}({{ answer.offensive_flag_count }}){% endif %}</span>
{% endif %}
- {% if request.user|can_flag_offensive(answer) %}{{ pipe() }}
- <span id="answer-offensive-flag-{{ answer.id }}" class="offensive-flag"
- title="{% trans %}report as offensive (i.e containing spam, advertising, malicious text, etc.){% endtrans %}">
- <a>{% trans %}flag offensive{% endtrans %}</a>
- {% if request.user|can_see_offensive_flags(answer) %}
- <span class="darkred">{% if answer.offensive_flag_count > 0 %}({{ answer.offensive_flag_count }}){% endif %}</span>
- {% endif %}
+ </span>
+ {% endif %}
+ {% if request.user|can_delete_post(answer) %}{{ pipe() }}
+ {% spaceless %}
+ <span class="action-link">
+ <a id="answer-delete-link-{{answer.id}}">
+ {% if answer.deleted %}{% trans %}undelete{% endtrans %}{% else %}{% trans %}delete{% endtrans %}{% endif %}</a>
</span>
- {% endif %}
- {% if request.user|can_delete_post(answer) %}{{ pipe() }}
- {% spaceless %}
- <span class="action-link">
- <a id="answer-delete-link-{{answer.id}}">
- {% if answer.deleted %}{% trans %}undelete{% endtrans %}{% else %}{% trans %}delete{% endtrans %}{% endif %}</a>
- </span>
- {% endspaceless %}
- {% endif %}
- </div>
- <div class="post-update-info-container">
- {{
- macros.post_contributor_info(
- answer,
- "original_author",
- answer.wiki,
- settings.MIN_REP_TO_EDIT_WIKI
- )
- }}
- {{
- macros.post_contributor_info(
- answer,
- "last_updater",
- answer.wiki,
- settings.MIN_REP_TO_EDIT_WIKI
- )
- }}
- </div>
- {{
- macros.post_comments_widget(
- post = answer,
- show_post = show_post,
- show_comment = show_comment,
- comment_order_number = comment_order_number,
- user = request.user,
- max_comments = settings.MAX_COMMENTS_TO_SHOW
+ {% endspaceless %}
+ {% endif %}
+ </div>
+ <div class="post-update-info-container">
+ {{
+ macros.post_contributor_info(
+ answer,
+ "original_author",
+ answer.wiki,
+ settings.MIN_REP_TO_EDIT_WIKI
)
- }}
+ }}
+ {{
+ macros.post_contributor_info(
+ answer,
+ "last_updater",
+ answer.wiki,
+ settings.MIN_REP_TO_EDIT_WIKI
+ )
+ }}
</div>
- </td>
- </tr>
- </table>
- </div>
- {% endfor %}
- <div class="paginator-container-left">
- {{ macros.paginator(paginator_context) }}
- </div><br/>
- {% endif %}
+ {{
+ macros.post_comments_widget(
+ post = answer,
+ show_post = show_post,
+ show_comment = show_comment,
+ comment_order_number = comment_order_number,
+ user = request.user,
+ max_comments = settings.MAX_COMMENTS_TO_SHOW
+ )
+ }}
+ </div>
+ </td>
+ </tr>
+ </table>
+ </div>
+ {% endfor %}
+ <div class="paginator-container-left">
+ {{ macros.paginator(paginator_context) }}
+ </div><br/>
+{% endif %}
<form id="fmanswer" action="{% url answer question.id %}" method="post">{% csrf_token %}
{% if request.user.is_authenticated() %}
<p style="padding-left:3px">
@@ -370,7 +369,6 @@
{% endif %}
{% endif %}
</form>
-</div>
{% endblock %}
{% block sidebar %}
diff --git a/askbot/skins/default/templates/question_retag.html b/askbot/skins/default/templates/question_retag.html
index 79cbbbff..883dc3aa 100644
--- a/askbot/skins/default/templates/question_retag.html
+++ b/askbot/skins/default/templates/question_retag.html
@@ -3,26 +3,24 @@
{% block title %}{% spaceless %}{% trans %}Change tags{% endtrans %}{% endspaceless %}{% endblock %}
{% block content %}
<h1>{% trans %}Change tags{% endtrans %} [<a href="{{ question.get_absolute_url() }}">{% trans %}back{% endtrans %}</a>]</h1>
-<div id="askform">
- <form id="fmretag" action="{% url retag_question question.id %}" method="post" >{% csrf_token %}
- <h2>
- {{ question.get_question_title() }}
- </h2>
- <div id="description" class="edit-content-html">
- {{ question.html }}
+<form id="fmretag" action="{% url retag_question question.id %}" method="post" >{% csrf_token %}
+ <h2>
+ {{ question.get_question_title() }}
+ </h2>
+ <div id="description" class="edit-content-html">
+ {{ question.html }}
+ </div>
+ <div class="form-item">
+ <strong>{{ form.tags.label_tag() }}:</strong> <span class="form-error"></span><br/>
+ {{ form.tags }} {{ form.tags.errors }}
+ <div class="title-desc">
+ {{ form.tags.help_text }}
</div>
- <div class="form-item">
- <strong>{{ form.tags.label_tag() }}:</strong> <span class="form-error"></span><br/>
- {{ form.tags }} {{ form.tags.errors }}
- <div class="title-desc">
- {{ form.tags.help_text }}
- </div>
- </div>
- <div class="error" ></div>
- <input type="submit" value="{% trans %}Retag{% endtrans %}" class="submit" />&nbsp;
- <input type="button" value="{% trans %}Cancel{% endtrans %}" class="submit" onclick="history.back(-1);" />
- </form>
-</div>
+ </div>
+ <div class="error" ></div>
+ <input type="submit" value="{% trans %}Retag{% endtrans %}" class="submit" />&nbsp;
+ <input type="button" value="{% trans %}Cancel{% endtrans %}" class="submit" onclick="history.back(-1);" />
+</form>
{% endblock %}
{% block sidebar %}
diff --git a/askbot/skins/default/templates/user_profile/user_edit.html b/askbot/skins/default/templates/user_profile/user_edit.html
index fe4ea35f..1e2fa2d6 100644
--- a/askbot/skins/default/templates/user_profile/user_edit.html
+++ b/askbot/skins/default/templates/user_profile/user_edit.html
@@ -16,7 +16,7 @@
{% endif %}
<h1><a href="{% url faq %}#gravatar">{% trans %}change picture{% endtrans %}</a><h1>
</div>
- <div id="askform" style="float:right;width:750px;text-align:left;">
+ <div style="float:right;width:750px;text-align:left;">
<h2>{% trans %}Registered user{% endtrans %}</h2>
<table class="user-details">
<tr>
diff --git a/askbot/skins/default/templates/user_profile/user_stats.html b/askbot/skins/default/templates/user_profile/user_stats.html
index 02849df1..81ea448f 100644
--- a/askbot/skins/default/templates/user_profile/user_stats.html
+++ b/askbot/skins/default/templates/user_profile/user_stats.html
@@ -98,15 +98,15 @@
{% spaceless %}
<h2>{% trans counter=total_awards %}<span class="count">{{counter}}</span> Badge{% pluralize %}<span class="count">{{counter}}</span> Badges{% endtrans %}</h2>
{% endspaceless %}
- <div class="user-stats-table">
+ <div class="user-stats-table badges">
<table>
<tr>
- <td width="180" style="line-height:35px">
+ <td style="line-height:35px">
{% for badge in badges %}{# todo: translate badge name properly #}
- <a href="{{badge.get_absolute_url()}}" title="{% trans description=badge.description %}{{description}}{% endtrans %}" class="medal"><span class="{{ badge.css_class }}">&#9679;</span>&nbsp;{% trans name=badge.name %}{{name}}{% endtrans %}</a><span class="tag-number"> &#215; {{ awarded_badge_counts[badge.id]|intcomma }}</span><br/>
+ <a href="{{badge.get_absolute_url()}}" title="{% trans description=badge.description %}{{description}}{% endtrans %}" class="medal"><span class="{{ badge.css_class }}">&#9679;</span>&nbsp;{% trans name=badge.name %}{{name}}{% endtrans %}</a><span class="tag-number"> &#215; {{ awarded_badge_counts[badge.id]|intcomma }}</span>
{% if loop.index is divisibleby 3 %}
- </td>
- <td width="180" style="line-height:35px">
+ </td></tr>
+ <tr><td style="line-height:35px">
{% endif %}
{% endfor %}
</td>
diff --git a/askbot/tasks.py b/askbot/tasks.py
index 8dfea5b4..caa33c64 100644
--- a/askbot/tasks.py
+++ b/askbot/tasks.py
@@ -93,9 +93,8 @@ def record_post_update(
assert(updated_by not in recipients)
- for user in set(recipients) | set(newly_mentioned_users):
- user.increment_response_count()
- user.save()
+ for user in (set(recipients) | set(newly_mentioned_users)):
+ user.update_response_counts()
#todo: weird thing is that only comments need the recipients
#todo: debug these calls and then uncomment in the repo
diff --git a/askbot/tests/db_api_tests.py b/askbot/tests/db_api_tests.py
index 66fb9f9d..6473845f 100644
--- a/askbot/tests/db_api_tests.py
+++ b/askbot/tests/db_api_tests.py
@@ -143,6 +143,14 @@ class DBApiTests(AskbotTestCase):
count = models.Tag.objects.filter(name='one-tag').count()
self.assertEquals(count, 0)
+ def test_search_with_apostrophe_works(self):
+ self.post_question(
+ user = self.user,
+ body_text = "ahahahahahahah database'"
+ )
+ matches = models.Question.objects.get_by_text_query("database'")
+ self.assertTrue(len(matches) == 1)
+
class UserLikeTests(AskbotTestCase):
def setUp(self):
self.create_user()
diff --git a/askbot/tests/email_alert_tests.py b/askbot/tests/email_alert_tests.py
index 7f086152..071aa5ad 100644
--- a/askbot/tests/email_alert_tests.py
+++ b/askbot/tests/email_alert_tests.py
@@ -27,7 +27,10 @@ def email_alert_test(test_func):
func_name = test_func.__name__
if func_name.startswith('test_'):
test_name = func_name.replace('test_', '', 1)
+ #run the main codo of the test function
test_func(test_object)
+ #if visit_timestamp is set,
+ #target user will visit the question at that time
test_object.maybe_visit_question()
test_object.send_alerts()
test_object.check_results(test_name)
@@ -283,11 +286,14 @@ class EmailAlertTests(TestCase):
self.__class__.__name__,
test_key,
)
+ #compares number of emails in the outbox and
+ #the expected message count for the current test
self.assertEqual(len(outbox), expected['message_count'], error_message)
if expected['message_count'] > 0:
if len(outbox) > 0:
error_message = 'expected recipient %s found %s' % \
(self.target_user.email, outbox[0].recipients()[0])
+ #verify that target user receives the email
self.assertEqual(
outbox[0].recipients()[0],
self.target_user.email,
@@ -805,17 +811,58 @@ class UnansweredReminderTests(utils.AskbotTestCase):
def setUp(self):
self.u1 = self.create_user(username = 'user1')
self.u2 = self.create_user(username = 'user2')
-
- def test_reminder_simple(self):
- """a positive test - user must receive a reminder
- """
askbot_settings.update('ENABLE_UNANSWERED_REMINDERS', True)
- days_ago = 5*askbot_settings.DAYS_BEFORE_SENDING_UNANSWERED_REMINDER
- long_ago = datetime.datetime.now() - datetime.timedelta(days_ago)
+ askbot_settings.update('MAX_UNANSWERED_REMINDERS', 5)
+ askbot_settings.update('UNANSWERED_REMINDER_FREQUENCY', 1)
+ askbot_settings.update('DAYS_BEFORE_SENDING_UNANSWERED_REMINDER', 2)
+
+ self.wait_days = askbot_settings.DAYS_BEFORE_SENDING_UNANSWERED_REMINDER
+ self.recurrence_days = askbot_settings.UNANSWERED_REMINDER_FREQUENCY
+ self.max_emails = askbot_settings.MAX_UNANSWERED_REMINDERS
+
+
+ def assert_have_emails(self, email_count = None):
+ management.call_command('send_unanswered_question_reminders')
+ outbox = django.core.mail.outbox
+ self.assertEqual(len(outbox), email_count)
+
+ def do_post(self, timestamp):
self.post_question(
user = self.u1,
- timestamp = long_ago
+ timestamp = timestamp
)
- management.call_command('send_unanswered_question_reminders')
- outbox = django.core.mail.outbox
- self.assertEqual(len(outbox), 1)
+
+ def test_reminder_positive_wait(self):
+ """a positive test - user must receive a reminder
+ """
+ days_ago = self.wait_days
+ timestamp = datetime.datetime.now() - datetime.timedelta(days_ago, 3600)
+ self.do_post(timestamp)
+ self.assert_have_emails(1)
+
+ def test_reminder_negative_wait(self):
+ """a positive test - user must receive a reminder
+ """
+ days_ago = self.wait_days - 1
+ timestamp = datetime.datetime.now() - datetime.timedelta(days_ago, 3600)
+ self.do_post(timestamp)
+ self.assert_have_emails(0)
+
+ def test_reminder_cutoff_positive(self):
+ """send a reminder a slightly before the last reminder
+ date passes"""
+ days_ago = self.wait_days + (self.max_emails - 1)*self.recurrence_days - 1
+ timestamp = datetime.datetime.now() - datetime.timedelta(days_ago, 3600)
+ self.do_post(timestamp)
+ self.assert_have_emails(1)
+
+
+ def test_reminder_cutoff_negative(self):
+ """no reminder after the time for the last reminder passes
+ """
+ days_ago = self.wait_days + (self.max_emails - 1)*self.recurrence_days
+ timestamp = datetime.datetime.now() - datetime.timedelta(days_ago, 3600)
+ self.do_post(timestamp)
+ self.assert_have_emails(0)
+
+
diff --git a/askbot/tests/search_state_tests.py b/askbot/tests/search_state_tests.py
index bb1423ca..b4b66a65 100644
--- a/askbot/tests/search_state_tests.py
+++ b/askbot/tests/search_state_tests.py
@@ -49,10 +49,17 @@ class SearchStateTests(TestCase):
self.add_tag('tag1')
self.assertEquals(self.state.query, 'hahaha')
self.assert_tags_are('tag1')
- self.update({'reset_query':True})
+ self.update({'reset_query': True})
self.assertEquals(self.state.query, None)
self.assert_tags_are('tag1')
+ def test_start_over(self):
+ self.update({'query': 'hahaha'})
+ self.add_tag('tag1')
+ self.update({'start_over': True})
+ self.assertEquals(self.state.query, None)
+ self.assertEquals(self.state.tags, None)
+
def test_auto_reset_sort(self):
self.update({'sort': 'age-asc'})
self.assertEquals(self.state.sort, 'age-asc')
diff --git a/askbot/utils/html.py b/askbot/utils/html.py
index 25a74a4a..aa8e24d8 100644
--- a/askbot/utils/html.py
+++ b/askbot/utils/html.py
@@ -9,11 +9,11 @@ class HTMLSanitizerMixin(sanitizer.HTMLSanitizerMixin):
'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'hr', 'i', 'img', 'ins', 'kbd',
'li', 'ol', 'p', 'pre', 'q', 's', 'samp', 'small', 'span', 'strike',
'strong', 'sub', 'sup', 'table', 'tbody', 'td', 'tfoot', 'th', 'thead',
- 'tr', 'tt', 'u', 'ul', 'var')
+ 'tr', 'tt', 'u', 'ul', 'var', 'object', 'param')
acceptable_attributes = ('abbr', 'align', 'alt', 'axis', 'border',
'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'cite',
- 'cols', 'colspan', 'datetime', 'dir', 'frame', 'headers', 'height',
+ 'cols', 'colspan', 'data', 'datetime', 'dir', 'frame', 'headers', 'height',
'href', 'hreflang', 'hspace', 'lang', 'longdesc', 'name', 'nohref',
'noshade', 'nowrap', 'rel', 'rev', 'rows', 'rowspan', 'rules', 'scope',
'span', 'src', 'start', 'summary', 'title', 'type', 'valign', 'vspace',
diff --git a/askbot/utils/markup.py b/askbot/utils/markup.py
index 0caf6848..16e45f87 100644
--- a/askbot/utils/markup.py
+++ b/askbot/utils/markup.py
@@ -4,18 +4,24 @@ from askbot.conf import settings as askbot_settings
from markdown2 import Markdown
#url taken from http://regexlib.com/REDetails.aspx?regexp_id=501 by Brian Bothwell
-URL_RE = re.compile("((?<!(href|.src)=['\"])((http|https|ftp)\://([a-zA-Z0-9\.\-]+(\:[a-zA-Z0-9\.&amp;%\$\-]+)*@)*((25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])|localhost|([a-zA-Z0-9\-]+\.)*[a-zA-Z0-9\-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(\:[0-9]+)*(/($|[a-zA-Z0-9\.\,\?\'\\\+&amp;%\$#\=~_\-]+))*))")
+URL_RE = re.compile("((?<!(href|.src|data)=['\"])((http|https|ftp)\://([a-zA-Z0-9\.\-]+(\:[a-zA-Z0-9\.&amp;%\$\-]+)*@)*((25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])|localhost|([a-zA-Z0-9\-]+\.)*[a-zA-Z0-9\-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(\:[0-9]+)*(/($|[a-zA-Z0-9\.\,\?\'\\\+&amp;%\$#\=~_\-]+))*))")
LINK_PATTERNS = [
(URL_RE, r'\1'),
]
def get_parser():
- extras = ['link-patterns',]
+ extras = ['link-patterns', 'video']
if askbot_settings.ENABLE_MATHJAX or \
askbot_settings.MARKUP_CODE_FRIENDLY:
extras.append('code-friendly')
+ if askbot_settings.ENABLE_VIDEO_EMBEDDING:
+ #note: this requires a forked version of markdown2 module
+ #pip uninstall markdown2
+ #pip install -e git+git://github.com/andryuha/python-markdown2.git
+ extras.append('video')
+
return Markdown(
html4tags=True,
extras=extras,
diff --git a/askbot/utils/mysql.py b/askbot/utils/mysql.py
new file mode 100644
index 00000000..cf073010
--- /dev/null
+++ b/askbot/utils/mysql.py
@@ -0,0 +1,20 @@
+"""Utilities for the MySQL backend"""
+from django.db import connection
+
+#in-memory cached variable
+SUPPORTS_FTS = None
+
+def supports_full_text_search():
+ """True if the database engine is MyISAM"""
+ from askbot.models import Question
+ global SUPPORTS_FTS
+ if SUPPORTS_FTS is None:
+ cursor = connection.cursor()
+ table_name = Question._meta.db_table
+ cursor.execute("SHOW CREATE TABLE %s" % table_name);
+ data = cursor.fetchone()
+ if 'ENGINE=MyISAM' in data[1]:
+ SUPPORTS_FTS = True
+ else:
+ SUPPORTS_FTS = False
+ return SUPPORTS_FTS
diff --git a/askbot/views/commands.py b/askbot/views/commands.py
index 809d4249..e2293262 100644
--- a/askbot/views/commands.py
+++ b/askbot/views/commands.py
@@ -99,35 +99,21 @@ def manage_inbox(request):
activity__activity_type__in = activity_types,
user = user
)
+
action_type = post_data['action_type']
- seen_memos = memo_set.filter(
- status=models.ActivityAuditStatus.STATUS_SEEN
- )
- new_memos = memo_set.filter(
- status=models.ActivityAuditStatus.STATUS_NEW
- )
if action_type == 'delete':
- user.new_response_count -= new_memos.count()
- user.seen_response_count -= seen_memos.count()
- user.clean_response_counts()
- user.save()
memo_set.delete()
elif action_type == 'mark_new':
- user.new_response_count += seen_memos.count()
- user.seen_response_count -= seen_memos.count()
- user.clean_response_counts()
- user.save()
memo_set.update(status = models.ActivityAuditStatus.STATUS_NEW)
elif action_type == 'mark_seen':
- user.new_response_count -= new_memos.count()
- user.seen_response_count += new_memos.count()
- user.clean_response_counts()
- user.save()
memo_set.update(status = models.ActivityAuditStatus.STATUS_SEEN)
else:
raise exceptions.PermissionDenied(
_('Oops, apologies - there was some error')
)
+
+ user.update_response_counts()
+
response_data['success'] = True
data = simplejson.dumps(response_data)
return HttpResponse(data, mimetype="application/json")
diff --git a/askbot/views/writers.py b/askbot/views/writers.py
index d103c776..d1f115dc 100644
--- a/askbot/views/writers.py
+++ b/askbot/views/writers.py
@@ -262,7 +262,7 @@ def ask(request):#view used to ask a new question
return render_into_skin('ask.html', data, request)
@login_required
-@csrf.csrf_protect
+#@csrf.csrf_protect remove for ajax
def retag_question(request, id):
"""retag question view
"""
diff --git a/follower/TODO.rst b/follower/TODO.rst
deleted file mode 100644
index b71b92ae..00000000
--- a/follower/TODO.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-* create tests & test runner script
-* create doc pages
-* publish on pypi
diff --git a/follower/__init__.py b/follower/__init__.py
deleted file mode 100644
index 20d8fee9..00000000
--- a/follower/__init__.py
+++ /dev/null
@@ -1,147 +0,0 @@
-"""A Django App allowing :class:`~django.contrib.auth.models.User` to
-follow instances of any other django models, including other users
-
-To use this module:
-* add "follower" to the ``INSTALLED_APPS`` in your ``settings.py``
-* in your app's ``models.py`` add:
-
- import follower
- follower.register(Thing)
-
-* run ``python manage.py syncdb``
-* then anywhere in your code you can do the following:
-
- user.follow(some_thing_instance)
- user.unfollow(some_thing_instance)
-
- user.get_followed_things() #note that "things" is from the name of class Thing
- some_thing.get_followers()
-
-Copyright 2011 Evgeny Fadeev evgeny.fadeev@gmail.com
-"""
-from django.contrib.auth.models import User
-from django.db.models.fields.related import ManyToManyField, ForeignKey
-
-REGISTRY = []
-
-def get_model_name(model):
- return model._meta.module_name
-
-
-def get_bridge_class_name(model):
- return 'Follow' + get_model_name(model)
-
-
-def get_bridge_model_for_object(obj):
- """returns bridge model used to follow items
- like the ``obj``
- """
- bridge_model_name = get_bridge_class_name(obj.__class__)
- from django.db import models as django_models
- return django_models.get_model('follower', bridge_model_name)
-
-
-def get_object_followers(obj):
- """returns query set of users following the object"""
- bridge_lookup_field = get_bridge_class_name(obj.__class__).lower()
- obj_model_name = get_model_name(obj.__class__)
- filter_criterion = 'followed_' + obj_model_name + '_records__followed'
- filter = {filter_criterion: obj}
- return User.objects.filter(**filter)
-
-
-def make_followed_objects_getter(model):
- """returns query set of objects of a class ``model``
- that are followed by a user"""
-
- #something like followX_set__user
- def followed_objects_getter(user):
- filter = {'follower_records__follower': user}
- return model.objects.filter(**filter)
-
- return followed_objects_getter
-
-
-def make_follow_method(model):
- """returns a method that adds a FollowX record
- for an object
- """
- def follow_method(user, obj):
- """returns ``True`` if follow operation created a new record"""
- bridge_model = get_bridge_model_for_object(obj)
- bridge, created = bridge_model.objects.get_or_create(follower = user, followed = obj)
- return created
- return follow_method
-
-
-def make_unfollow_method(model):
- """returns a method that allows to unfollow an item
- """
- def unfollow_method(user, obj):
- """attempts to find an item and delete it, no
- exstence checking
- """
- bridge_model = get_bridge_model_for_object(obj)
- objects = bridge_model.objects.get(follower = user, followed = obj)
- objects.delete()
- return unfollow_method
-
-
-def register(model):
- """returns model class that connects
- User with the followed object
-
- ``model`` - is the model class to follow
-
- The ``model`` class gets new method - ``get_followers``
- and the User class - a method - ``get_followed_Xs``, where
- the ``X`` is the name of the model
-
- Note, that proper pluralization of the model name is not supported,
- just "s" is added
- """
- from follower import models as follower_models
- from django.db import models as django_models
-
- model_name = get_model_name(model)
- if model in REGISTRY:
- return
-
- #1) - create a new class FollowX
- class Meta(object):
- app_label = 'follower'
-
- fields = {
- 'follower': ForeignKey(
- User,
- related_name = 'followed_' + model_name + '_records'
- ),
- 'followed': ForeignKey(
- model,
- related_name = 'follower_records'
- ),
- '__module__': follower_models.__name__,
- 'Meta': Meta
- }
-
-
- #create the bridge model class
- bridge_class_name = get_bridge_class_name(model)
- bridge_model = type(bridge_class_name, (django_models.Model,), fields)
- setattr(follower_models, bridge_class_name, bridge_model)
-
- #2) patch ``model`` with method ``get_followers()``
- model.add_to_class('get_followers', get_object_followers)
-
- #3) patch ``User`` with method ``get_followed_Xs``
- method_name = 'get_followed_' + model_name + 's'
- getter_method = make_followed_objects_getter(model)
- User.add_to_class(method_name, getter_method)
-
- #4) patch ``User`` with method ``follow_X``
- follow_method = make_follow_method(model)
- User.add_to_class('follow_' + model_name, follow_method)
-
- #5) patch ``User`` with method ``unfollow_X``
- unfollow_method = make_unfollow_method(model)
- User.add_to_class('unfollow_' + model_name, unfollow_method)
diff --git a/follower/models.py b/follower/models.py
deleted file mode 100644
index 71a83623..00000000
--- a/follower/models.py
+++ /dev/null
@@ -1,3 +0,0 @@
-from django.db import models
-
-# Create your models here.
diff --git a/follower/tests.py b/follower/tests.py
deleted file mode 100644
index 806b2f2b..00000000
--- a/follower/tests.py
+++ /dev/null
@@ -1,39 +0,0 @@
-"""
-Test cases for the follower module
-"""
-from django.db import models, transaction
-from django.contrib.contenttypes.management import update_contenttypes
-from django.core.management.commands import syncdb
-from django.test import TestCase
-
-import follower
-
-class SomeJunk(models.Model):
- yeah = models.BooleanField(default = True)
-
-class SomeTrash(models.Model):
- yeah = models.BooleanField(default = True)
-
-class FollowerTests(TestCase):
- """idea taken from Dan Rosemans blog
- http://blog.roseman.org.uk/2010/04/13/temporary-models-django/
- create a temp model in setUp(), run tests on it, then destroy it in dearDown()
- """
-
- def setUp(self):
- models.register_models('followertests', SomeJunk)
- models.signals.post_syncdb.disconnect(update_contenttypes)
-
- def test_register_fk_follow(self):
- follower.register(SomeJunk)
- #call_command('syncdb')
- cmd = syncdb.Command()#south messes up here - call django's command directly
- cmd.execute()
- transaction.commit()
- #test that table `follower_followsomejunk` exists
- model = models.get_model('follower', 'FollowSomeJunk')
- self.assertEquals(model.objects.count(), 0)
-
- #def tearDown(self):
- # cursor = connection.cursor()
- # cursor.execute('DROP TABLE `followertests_somejunk`')
diff --git a/follower/views.py b/follower/views.py
deleted file mode 100644
index 60f00ef0..00000000
--- a/follower/views.py
+++ /dev/null
@@ -1 +0,0 @@
-# Create your views here.
diff --git a/setup.py b/setup.py
index 3347f9e3..31421af5 100644
--- a/setup.py
+++ b/setup.py
@@ -33,9 +33,11 @@ WIN_PLATFORMS = ('win32', 'cygwin',)
if sys.platform not in WIN_PLATFORMS:
install_requires.append('mysql-python')
+import askbot
+
setup(
name = "askbot",
- version = '0.6.77',#remember to manually set this correctly
+ version = askbot.get_version(),#remember to manually set this correctly
description = 'Question and Answer forum, like StackOverflow, written in python and Django',
packages = find_packages(),
author = 'Evgeny.Fadeev',